halide/Halide
a language for fast, portable data-parallel computation
何を解決するか
Halide は、高パフォーマンスな画像および配列処理コードの作成を簡素化するためのプログラミング言語です。開発者は、さまざまな現代的なハードウェアアーキテクチャ上で効率的なコードを記述でき、各ターゲットに対して手動でプラットフォーム固有の最適化を書く必要がありません。
動作方法
Halide は埋め込み言語であり、独立した言語ではありません。主に C++(C++17 以降が必要)に埋め込まれており、開発者は Halide C++ API を使ってメモリ内に処理パイプラインの表現を構築します。このパイプラインは、JIT コンパイル(即時コンパイル)または AOT コンパイル(事前コンパイル)のいずれかでオブジェクトファイルに変換できます。
Halide は Python バインディングも提供しており、C++ を必要とせずに Python 内で言語を使用できます。
対象ユーザー
CPU(X86、ARM、RISC-V など)および GPU(CUDA、OpenCL、Metal、Vulkan など)を含む、複数のプラットフォームで高パフォーマンスな配列および画像処理を実行する必要がある開発者向けです。複数のオペレーティングシステムで動作します。
特徴
- 広範なハードウェア対応:幅広い CPU アーキテクチャおよび GPU コンピューティング API をターゲットにします。
- 埋め込み性:C++ および Python に直接統合されます。
- 柔軟なコンパイル:JIT および AOT コンパイルモードの両方をサポートします。
- クロスプラットフォーム:Linux、Windows、macOS、Android、iOS で動作します。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト