データ並列 C++ (DPC++) での CMake の使用

次の内容は OS 固有です。

Linux*

Linux* では、インテル® oneAPI DPC++/C++ コンパイラー での CMake の使用がサポートされています。CMake を使用する場合、icx (バリアント) バイナリーを使用してコンパイラーを有効にします。CC/CXX または CMAKE_C_COMPILER /CMAKE_CXX_COMPILER 文字列を icx/icpx に設定する必要があります。次に例を示します。

$ cmake -DCMAKE_C_COMPILER=icx -DCMAKE_CXX_COMPILER=icpx …

-または-

$ export CC=icx; export CXX=icpx; cmake …

Windows*

Windows* では、インテル® oneAPI DPC++/C++ コンパイラー での CMake の使用がサポートされています。CMake を使用する場合、icx (バリアント) バイナリーを使用してコンパイラーを有効にします。CC/CXX または CMAKE_C_COMPILER /CMAKE_CXX_COMPILER 文字列を icx に設定する必要があります。Windows* 環境でサポートされるジェネレーターは Ninja* です。

$ cmake -DCMAKE_C_COMPILER=icx -DCMAKE_CXX_COMPILER=icx -GNinja … 

-または-

$ CC=icx CXX=icx cmake -GNinja …

サポート

以下の手順に従って、プロジェクトのコンパイラーを有効にします。

  1. プロジェクトの CMakeLists.txt に以下のコードを追加します。
    cmake_minimum_required(VERSION 3.21.0)

    インテル® oneAPI DPC++/C++ コンパイラーで CMake を使用する場合、バージョン 3.21 以降が必要です。
  2. プロジェクトの CMakeLists.txt に以下のコードを追加します。
    find_package(IntelDPCPP REQUIRED)
    このコードは dpcpp コンパイラーを有効にします。DPC++ 設定パッケージ (IntelDPCPPConfig.cmake) はインテル® oneAPI DPC++/C++ コンパイラーに同梱されています。パッケージ・ディレクトリーは、icx の bin ディレクトリーの親ディレクトリーにあります。例: /deploy/linux_prod/IntelDPCPP/IntelDPCPPConfig.cmake
  3. C と C++ の適切なコンパイラーを選択します。設定方法は、上記の「Linux*」セクションと「Windows*」セクションを参照してください。
  4. CMake を実行して、通常通りアプリケーションをビルドします。
  5. DCP++ 設定パッケージにより、その他の変数が必要になることがあります。詳細は、パッケージを参照してください。