エラー処理#
oneMKL のエラー処理は、C++ の例外メカニズムに関連しています。エラーが発生すると、標準の C++ エラー処理メカニズムによってキャッチされ、関数呼び出しに伝搬されます。
例外の分類#
oneMKL の例外分類は、C++ 標準ライブラリーの分類と一致しています。oneMKL は、oneMKL 例外クラスの階層に基本クラスを定義するクラスを導入します。すべての oneMKL ルーチンは、基本クラスから継承される例外をスローします。
oneMKL 例外階層では、oneapi::mkl::exception は std::exception クラスから継承された基本クラスです。他のすべての oneMKL 例外クラスは、この基本クラスから派生しています。

oneMKL 例外の階層#
すべての oneMKL 問題固有の例外が次の表にリストされています。
例外クラス |
説明 |
|---|---|
|
特定のデバイスでルーチンがサポートされていない場合に問題を報告します |
|
ホストのメモリー割り当てで発生した問題を報告します |
|
特定のデバイスのメモリー割り当てで発生した問題を報告します |
|
指定されたパラメーターに対して特定のルーチンが実装されていない場合に問題を報告します |
|
ルーチンへの引数が拒否されたときの問題を報告します |
|
ハンドル (記述子) が初期化されていない場合に問題を報告します |
|
oneMKL ルーチン内で発生した計算エラーを報告します |
|
oneMKL ルーチン内で発生したエラーを報告します |