m4rs-mt/ILGPU

ILGPU JIT Compiler for high-performance .Net GPU programs

What it solves

ILGPU is a JIT (just-in-time) compiler that allows developers to write high-performance GPU programs using .NET-based languages (like C#) instead of relying on native dependencies or specialized GPU languages like CUDA C++.

How it works

It compiles .NET code into GPU-executable instructions. It provides a multi-threaded CPU accelerator, which allows kernels to be executed and debugged on the CPU before being deployed to the GPU. It also includes a standard library of high-level algorithms (such as sorting and prefix sum) that work across all supported accelerator types.

Who it’s for

.NET developers who need the performance of GPU acceleration for their applications without leaving the C# ecosystem or needing to write native C++ code.

Highlights

  • Pure C# Implementation: Written entirely in C# with no native dependencies.
  • CPU Debugging: Integrated CPU accelerator for debugging kernels and hardware features like shared memory and atomics.
  • C# Integration: Kernels can use default C# functions and value types without special annotations.
  • Algorithm Library: Includes a built-in library of high-level algorithms for common GPU tasks.

Related

  • Project
  • Project
  • Project
  • Project
  • Project