mkl、Qmkl

インテル® oneAPI マス・カーネル・ライブラリー(インテル® oneMKL ) の特定のライブラリーにリンクするようにコンパイラーに指示します。Windows* システムでは、このオプションをコンパイル時に指定する必要があります。

構文

Linux*:

-mkl[=lib]

macOS*:

-mkl[=lib]

Windows*:

/Qmkl[:lib]

引数

lib

リンクするインテル® oneMKL ライブラリー・ファイルを示します。設定可能な値は以下のとおりです。

parallel

インテル® oneMKL のスレッド化されたライブラリーを使用してリンクします。これは、lib を指定しない場合のデフォルトです。

sequential

インテル® oneMKL のシーケンシャル・ライブラリーを使用してリンクします。

cluster

インテル® oneMKL のクラスター・ライブラリーとシーケンシャル・ライブラリーを使用してリンクします。クラスター・ライブラリーは macOS* では利用できません。

デフォルト

オフ

コンパイラーは、インテル® oneMKL にリンクしません。

説明

このオプションは、インテル® oneAPI マス・カーネル・ライブラリー(インテル® oneMKL ) の特定のライブラリーにリンクするようにコンパイラーに指示します。

Linux* および macOS* システムでは、-mkl を指定すると、ダイナミック・リンクがデフォルトになります。これは C++ 固有のコンテンツです。DPC++ には適用されません。インテル® oneMKL を静的にリンクするには、次のオプションを指定します。

-mkl -static-intel

Windows* では、/Qmkl を指定すると、スタティック・リンクがデフォルトになります。インテル® oneMKL を動的にリンクするには、次のオプションを指定します。

/Qmkl /MD 

インテル® oneMKL ライブラリーの使用に関する詳細は、インテル® デベロッパー・ゾーンの「インテル® MKL リンクライン・アドバイザー」(https://software.intel.com/content/www/us/en/develop/articles/intel-mkl-link-line-advisor.html (英語)) を参照してください。

Windows* では、このオプションはコンパイル済みコードにディレクティブを追加し、リンカーはドライバーからの入力なしにそれを読み取ります。Linux* および macOS* では、ドライバーがリンクコマンドに明示的にライブラリー名を追加する必要があります。

[Q]mkl または [Q]mkl=parallel オプションと [Q]tbb オプションを一緒に指定すると、コンパイラーはインテル® oneMKL のスレッドバージョンとリンクします。

ただし、[Q]mkl または [Q]mkl=parallel オプションと [Q]tbb および [q または Q]openmp オプションを一緒に指定すると、コンパイラーはインテル® oneMKL の OpenMP* スレッドバージョンとリンクします。

IDE オプション

Visual Studio*: なし

Eclipse*: [Performance Library Build Components] > [Use Intel® oneAPI Math Kernel Library]

Xcode*: [Performance Library Build Components] > [Use Intel® oneAPI Math Kernel Library]

代替オプション

なし

関連情報