この資料は、インテルの「Downloadable Documentation: Intel® oneAPI Toolkits and Components」からダウンロードした『Intel® oneAPI Math Kernel Library』 (mkl_docs_2025.0.0.zip) の「Intel® oneAPI Math Kernel Library Cookbook」 (documentation\en\mkl\cookbook\) を iSUS で翻訳した日本語参考訳です。原文は更新される可能性があります。原文と翻訳文の内容が異なる場合は原文を優先してください。
本ドキュメントはレイアウト調整および校閲を行っておりません。誤字脱字、製品名や用語の表記、レイアウト等の不具合が含まれる可能性があることを予めご了承ください。
インテル® oneAPI マス・カーネル・ライブラリー (インテル® oneMKL) には、行列を乗算する、連立方程式を解く、フーリエ変換を行うなど、さまざまな数値問題を解く際に役立つ多くのルーチンが含まれています。専用の oneMKL ルーチンが用意されていない問題については、oneMKL で提供されているビルディング・ブロックを組み合わせることにより問題を解くことができます。
インテル® oneMKL クックブックには、より複雑な問題を解くために oneMKL ルーチンを組み合わせる際に役立つ手法が含まれています。
oneMKL PARDISO、BLAS、スパース BLAS、LAPACK ルーチンを使用した行列レシピ
定常非線形熱伝導方程式の近似解を求めるでは、oneMKL PARDISO、BLAS、スパース BLAS ルーチンを使用して非線形方程式の解を求める手法を紹介します。
ブロック三角行列の因数分解には、BLAS および LAPACK ルーチンの oneMKL 実装が使用されます。
LU 因数分解されたブロック三重対角係数行列を含む連立線形方程式を解くでは、因数分解レシピを拡張して連立方程式を解きます。
ブロック三重対称正定値行列の因数分解では、BLAS と LAPACK ルーチンを使用した対称正定値ブロック三重行列のコレスキー因数分解を説明します。
ブロック三重対称正定値係数行列を含む連立線形方程式を解くでは、BLAS と LAPACK ルーチンを使用して連立方程式を解く因数分解レシピを拡張します。
2 つの部分空間の主角度の計算では、LAPACK SVD を使用して主角度を計算します。
ブロック三角行列の不変部分空間の主角度の計算では、LAPACK SVD の使用を部分空間がブロック三角行列の不変部分空間で互いに補完する場合に拡張します。
高速フーリエ変換のレシピ
フーリエ積分の評価では、oneMKL 高速フーリエ変換 (FFT) インターフェイスを使用して連続するフーリエ変換積分を評価します。
高速フーリエ変換を使用したコンピューター・トモグラフィー・イメージの復元では、oneMKL FFT インターフェイスを使用してコンピューター・トモグラフィー・データからイメージを復元します。
数値演算のレシピ
金融市場のデータストリームにおけるノイズ・フィルタリングでは、oneMKL サマリー統計ルーチンを使用してストリーミング・データの相関行列を計算します。
モンテカルロ法を使用したヨーロピアン・オプションの価格計算では、oneMKL の基本乱数ジェネレーター (BRNG) を利用してヨーロピアン・オプション (コールおよびプット) の価格を計算します。
ブラックショールズ方程式を使用したヨーロピアン・オプションの価格計算では、oneMKL ベクトルマス関数を利用してブラックショールズ方程式を使用したヨーロピアン・オプションの価格計算をスピードアップします。
置換のない複数の単純なランダム・サンプリングでは、大きな K についてサイズ N の母集団から置換なしで K の単純なランダム長 M のサンプルを生成します。
ヒストスプライン手法を使用した画像スケーリングでは、ヒストスプライン計算の画像スケーリングおよびスプライン補間に oneMKL のデータ・フィッティング関数を使用します。
さまざまなプログラミング環境で oneMKL を使用するレシピ
Python* の科学計算を高速化すると、oneMKL を使用して NumPy* および SciPy* ソースを構築し、oneMKL 自動オフロードを有効にすることで Python コードのパフォーマンスが向上することがわかります。
クックブックのコード例は、一部のレシピは Fortran で、その他のレシピでは C で提供されています。
データ並列 C++ (DPC++) アプリケーションのコードサンプルは、oneMKL リポジトリーにあります。追加のリソースと oneMKL の導入には、インテル® oneAPI マス・カーネル・ライブラリー導入ガイドを参照してください。