コード分岐の指定

インテル® oneAPI マス・カーネル・ライブラリー (インテル® oneMKL) は、oneMKL ルーチンから再現可能な結果を​​取得できるようにする条件付き数値再現性 (CNR) 機能を提供します。CNR を有効にする場合、ターゲットとする命令セット・アーキテクチャー (ISA) に対応するインテル® oneAPI マス・カーネル・ライブラリー (インテル® oneMKL) の特定のコード分岐を選択します。MKL_CBWR 環境変数を使用して、コード分岐 (branch) やその他の CNR オプションを指定できます。

厳密な CNR モードを有効にするには、STRICT フラグを使用します。詳細は、再現条件を参照してください。

<branch> プレースホルダーは、次のいずれかの値で CNR ブランチを指定します:

説明

AUTO

CNR モードは、標準 ISA ベースのディスパッチ・モデル (固定キャッシュサイズ、決定性のあるリダクション、スタティック・スケジュールを保証) を使用します。

COMPATIBLE

インテル® ストリーミング SIMD 拡張命令 2 (インテル® SSE2) (rcpps/rsqrtps 命令を除く)

SSE2

インテル® SSE2

SSE3

非推奨。インテル® ストリーミング SIMD エクステンション 3 (インテル® SSE3)この設定は後方互換性のために残されています。SSE2 と等価です。

SSSE3

非推奨。インテル® ストリーミング SIMD エクステンション 3 (SSSE3)

SSE4_2

インテル® ストリーミング SIMD エクステンション 4.2 (インテル® SSE4.2)

AVX

非推奨。インテル® アドバンスト・ベクトル・エクステンション (インテル® AVX)

AVX2

インテル® アドバンスト・ベクトル・エクステンション 2 (インテル® AVX2)

AVX512

インテル® Xeon® プロセッサー・ベースのシステムのインテル® AVX-512

AVX512_E1

ベクトル・ニューラル・ネットワーク命令をサポートするインテル® アドバンスト・ベクトル・エクステンション 512 (インテル® AVX-512)

AVX512_MIC

非推奨。インテル® Xeon Phi™ プロセッサーのインテル® アドバンスト・ベクトル・エクステンション 512 (インテル® AVX-512)この設定は後方互換性のために残されています。AVX2 と等価です。

AVX512_MIC_E1

非推奨。インテル® Xeon Phi™ プロセッサー上でベクトル・ニューラル・ネットワーク命令をサポートするインテル® アドバンスト・ベクトル・エクステンション 512 (インテル® AVX-512)この設定は後方互換性のために残されています。AVX2 と等価です。

CNR 分岐を指定するときは、次の点に注意してください。

MKL_CBWR 環境変数を設定するか、mkl_cbwr_set 関数を呼び出すと、コード分岐が固定され、再現性モードが設定されます。

関数を使用した分岐の指定方法は、『インテル® MKL デベロッパー・リファレンス』 (英語) を参照してください。

製品および性能に関する情報

性能は、使用状況、構成、およびその他の要因によって異なります。詳細については、www.Intel.com/PerformanceIndex (英語) をご覧ください。

改訂 #20201201

関連情報