m4rs-mt/ILGPU

ILGPU JIT Compiler for high-performance .Net GPU programs

何を解決するか

ILGPU は JIT(ジャストインタイム)コンパイラであり、CUDA C++ のようなネイティブ依存性や専用GPU言語に頼らず、.NETベースの言語(C#など)を使って高性能GPUプログラムを書くことを可能にします。

動作方法

.NETコードをGPU実行可能な命令にコンパイルします。マルチスレッドCPUアクセラレータを提供しており、GPUにデプロイする前にCPU上でカーネルを実行・デバッグできます。また、すべてのサポートされているアクセラレータタイプで動作する高レベルアルゴリズム(ソートやプレフィックス和など)の標準ライブラリも含まれています。

対象ユーザー

C#エコシステムから離れず、ネイティブC++コードを書かずにGPUアクセラレーションのパフォーマンスを必要とする.NET開発者。

特徴

  • 純粋なC#実装:ネイティブ依存性のない、完全にC#で書かれた実装。
  • CPUデバッグ:共有メモリやアトミック操作などのハードウェア機能を含む、カーネルのデバッグに使える統合CPUアクセラレータ。
  • C#統合:特別な注釈なしに、デフォルトのC#関数や値型を使用可能。
  • アルゴリズムライブラリ:一般的なGPUタスク向けの高レベルアルゴリズムの組み込みライブラリ。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト