インテル® MKL 11.3 ユーザーズガイド
インテル® MKL カーネルの直接呼び出しには次の制限があります。
MKL_DIRECT_CALL または MKL_DIRECT_CALL_SEQ マクロが使用されると、インテル® MKL はエラーチェックを省略する場合があります。
エラーチェックが省略された場合、安全ではないコード、あるいは正しくないコードが実行されないように、関数パラメーターの正当性をチェックするのは開発者の責任です。
この機能は、?gemm、?gemm3m、?syrk、?trsm、?axpy、および ?dot 関数でのみ利用できます。
インテル® MKL の verbose モード、条件付き数値再現性、および BLAS95 インターフェイスはサポートされていません。
GNU* Fortran コンパイラーはサポートされません。
C アプリケーションの場合、インテル® コンパイラーの /Qstd=c99 コンパイラー・オプションを指定して、宣言とユーザーコードの混在を有効にする必要があります。
PGI* コンパイラーで固定形式の Fortran ソースコードをコンパイルする場合、インテル® MKL 関数を含む行は、行の最後の桁の少なくとも 7 桁前 (通常は、72 - 7 = 65 桁) で終了する必要があります。
直接呼び出し機能は、インテル® MKL 関数のより長い名前を使用するため、PGI* コンパイラーでは、行の長さが固定形式の Fortran ソースコードをコンパイルする際の桁制限を超える場合があります。その場合、コンパイラーは制限を超えた行の部分を無視するため、予期しないプログラムの動作が発生することがあります。
インテル® コンパイラーは、互換マイクロプロセッサー向けには、インテル製マイクロプロセッサー向けと同等レベルの最適化が行われない可能性があります。これには、インテル® ストリーミング SIMD 拡張命令 2 (インテル® SSE2)、インテル® ストリーミング SIMD 拡張命令 3 (インテル® SSE3)、ストリーミング SIMD 拡張命令 3 補足命令 (SSSE3) 命令セットに関連する最適化およびその他の最適化が含まれます。インテルでは、インテル製ではないマイクロプロセッサーに対して、最適化の提供、機能、効果を保証していません。本製品のマイクロプロセッサー固有の最適化は、インテル製マイクロプロセッサーでの使用を目的としています。インテル® マイクロアーキテクチャーに非固有の特定の最適化は、インテル製マイクロプロセッサー向けに予約されています。この注意事項の適用対象である特定の命令セットの詳細は、該当する製品のユーザー・リファレンス・ガイドを参照してください。 改訂 #20110804 |