LLVMベースの異機種混在環境向けIR「HPVM 1.0」が公開

 The Illinois LLVMコンパイラ研究グループは4月8日、LLVMコンパイラスタックをベースとするコンパイラ「HPVM v1.0」を公開したことを発表した。

 HPVM(Heterogeneous Parallel Systems Compiler)は、再ターゲット可能なコンパイラインフラで、CPU、GPU、FGPA、アクセラレーターをターゲットとする(バージョン1.0ではFGPAとアクセラレーターは含まれていない)。プロジェクトは、LLVMが生まれたイリノイ大学で、LLVM 9.0コンパイラ中間表現(IR)を明示的かつ階層的なデータフロー表現で拡張するターゲット非依存型のコンパイラ中間表現(IR)として進んでいる。

 1.0では、1月に公開したバージョン0.5に加えて、線型代数テンソルのオペレーションをサポートした。PytorchとKerasのフロントエンドもサポートし、近似値チューニングのためのフレームワークも備えた。バックエンドは、CPU、NVIDIA GPU(テンソル向け処理にcuDNN、非テンソル向けのOpenCL)をサポートする。インストールプロセスを自動化するインストールスクリプトを備え、LLVM 9.0のパッチ適用、必要なPythonパッケージも自動でインストールし、複数のベンチマーク、ユニットテスト、リグレッションテストも含むという。

 HPVM 1.0はプロジェクトのWebサイトより入手できる。ライセンスはApache License 2。

HPVM
https://gitlab.engr.illinois.edu/llvm/hpvm-release