KhronosGroup/OpenCL-ICD-Loader

The OpenCL ICD Loader project.

何を解決するか

このプロジェクトは、開発者が特定のハードウェアベンダーのドライバ(ICD)にソフトウェアをリンクしなくても、OpenCLを使用するアプリケーションを構築できる標準化された方法を提供します。これにより、アプリケーションがコンパイル時にシステムに存在する特定のGPUやアクセラレータデバイスを事前に知る必要がなくなります。

動作方法

ICDローダーは、アプリケーションと実際のハードウェアドライバの間の仲介層として機能します。主に以下の3つの機能を実行します:

  1. APIエクスポート:アプリケーションが呼び出す標準OpenCL APIエントリポイントを提供します。
  2. 列挙:Windowsではレジストリキー、Linuxでは特定のディレクトリを介してシステムをスキャンし、利用可能なOpenCL実装を検出します。
  3. 転送:使用されているデバイスに基づいて、アプリケーションからのAPI呼び出しを適切なハードウェア固有の実装にルーティングします。

対象ユーザー

GPU、CPU、またはその他のアクセラレータ上で並列計算にOpenCLを利用するクロスプラットフォームで、ハードウェアに依存しないアプリケーションを開発するソフトウェア開発者。

特徴

  • ハードウェア非依存:ベンダー固有のリンクなしで、任意のOpenCL準拠デバイス上でアプリケーションを実行可能。
  • 実験的レイヤー対応:API呼び出しの拡張やインターセプトを可能にする実験的機能を含む。
  • クロスプラットフォーム:WindowsおよびLinux環境をサポート。
  • C言語ベースのインフラ:APIヘッダーとハードウェア固有のドライバ実装の間に明確な分離を提供。

関連

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