インテル® oneAPI ツールで配布されている共有ライブラリーを使用している場合は、ユーザーのシステムにこれらの共有ライブラリーがあることを確認する必要があります。
ユーザー・コミュニティーにデプロイされるアプリケーションがインテル® oneAPI ツールで配布される共有ライブラリー (Linux* の .so 共用オブジェクト、Windows* の .dll ダイナミック・ライブラリー) に依存している場合は、ユーザーのシステムにこれらの共有ライブラリーがあることを確認する必要があります。プログラムやコンポーネントが依存する共有ライブラリーは、次の方法で特定できます。
上記のコマンドを実行後、ユーザーへライブラリーをデプロイする方法を選択する必要があります。
アプリケーションのビルド、実行、デバッグが完了したら、ユーザーにデプロイします。デプロイメントには、インテル® oneAPI ツールキットのコンポーネントのライブラリーを含む共有ライブラリーが含まれます。
アプリケーションが依存するインテル® oneAPI ツールキットからの共有ライブラリーをデプロイする方法は 2 つあります。
インテル® oneAPI ツールキットからアプリケーション環境へ共有ライブラリーをコピーして、アプリケーションと一緒にパッケージ化してデプロイします。インストールしたインテル® oneAPI ツールキットとコンポーネントに関連するライセンスとサードパーティーのファイルを確認して、再配布可能なファイルを決定します。
このモデルの利点は、ライブラリーとバージョンを制御できるため、テストしたライブラリーのみをパッケージ化してデプロイすることができます。欠点は、エンドユーザーがシステムにインストールされたライブラリーを見ることができることです。また、更新が必要になるたびにライブラリーを更新する責任があります。
インテルが提供するランタイムパッケージを使用します。ユーザーは、アプリケーションをインストールする際に、これらのパッケージをインストールします。ランタイムパッケージは固定の場所にインストールされるため、インテル® oneAPI ツールで開発されたすべてのアプリケーションで使用できます。
利点は、各ライブラリーの 1 つのコピーをすべてのアプリケーションで共有することで、パフォーマンスが向上することです。また、アプリケーションの更新から独立して、ランタイムパッケージの更新によりライブラリーの問題を解決することができます。欠点は、ランタイムパッケージはプライベート・モデルのパッケージよりもサイズが大きくなることです。また、テストしたランタイムライブラリーのバージョンとエンドユーザーのバージョンが同じではない場合があります。
環境、要件、ユーザーのニーズに応じて最適なモデルを選択してください。
どちらのモデルでも、通常は setvars/vars スクリプトやモジュールファイルで処理される特定の環境変数を手動で設定する必要があります。
例えば、インテル® MPI ライブラリーでは、インストール時に次の環境変数を設定する必要があります。
インテル® oneAPI 製品の各マイナーバージョンは、同じリリース (例えば 2021) のほかのマイナーバージョンと互換性があります。API や ABI に大きな変更があった場合は、メジャーバージョンが上がります。例えば、バージョン 2021.1 のインテル® oneAPI 製品でアプリケーションをテストした場合、すべての 2021.x バージョンで動作します。しかし、バージョン 2022.x や 19.x での動作は保証されません。