インテル® マス・カーネル・ライブラリー 10.0 Windows* 版
リリースノート
目次
概要
インテル® MKL の新機能
動作環境
インストール・ノート
ドキュメント
既知の制限事項
テクニカルサポートとフィードバック
関連製品とサービス
著作権と商標について
インテル® マス・カーネル・ライブラリー (インテル® MKL) は、工学、科学、金融系ソフトウェアの開発者向けに、線形代数ルーチン、高速フーリエ変換、ベクトル・マス・ライブラリー関数、乱数生成関数を提供します。これらのルーチンや関数はすべて、最新のインテル® Pentium® 4 プロセッサー、ストリーミング SIMD 拡張命令 3 (SSE3) 対応 64 ビット インテル® Xeon® プロセッサー、インテル® Itanium® 2 プロセッサー用に最適化されています。本ソフトウェアは、インテル以外の (x86) プロセッサーでも問題なく動作します。
インテル® MKL は、線形代数機能として、LAPACK (ソルバーおよび固有ソルバー) に加え、複雑な数学ソフトウェアで必要な BLAS レベル 1 (ベクトル演算)、レベル 2 (ベクトル-行列演算)、レベル 3 (行列-行列演算) を提供します。FORTRAN 90/95 用に、少ない引数で LAPACK ドライバー・サブルーチンや計算サブルーチンを呼び出すことができるインターフェイスも用意しています。また、ScaLAPACK (スケーラブル LAPACK) を備え、PBLAS (並列基本線形代数) といった機能をサポートしています。スパース連立方程式の解の算出用には、スパース BLAS レベル 1、レベル 2、レベル 3 のサポートに加え、直接法スパースソルバーおよび反復法スパースソルバーも用意しています。
インテル® MKL は、(変換の長さが 2 の累乗に限定されない) 混合基数に対応する多次元離散フーリエ変換 (1 次元、2 次元、3 次元) を備え、 クラスター上で利用可能なこれらの関数の分散型バージョンも提供しています。また、偏微分方程式を解くために、反復ソルバーの収束に役立ついくつかのプリコンディショナーも用意されています。最適化 [Trust Region] ソルバーは、非線形最小二乗問題 (境界制約のあるなしにかかわらず) の解を効率的に求めるためのルーチンを提供します。
インテル® MKL のベクトル化された超越関数 (ベクトル・マス・ライブラリー (VML) と呼ぶ) は、多くのプロセッサー上で、LibM (スカラー) 関数よりも優れたパフォーマンスと精度を実現します。ベクトル・スタティスティカル・ライブラリー (VSL) は、さまざまな確率分布および畳み込み/相関ルーチン用の高性能かつベクトル化された乱数ジェネレーターを提供します。また、浮動小数点値の区間に対して演算を行う関数群も用意しています。区間演算パッケージには、区間線形連立方程式のソルバー、逆区間行列のソルバー、および区間行列の正則性/特異性をテストするための関数が含まれています。
インテル® MKL の BLAS、LAPACK、直接法スパースソルバー (DSS)、FFT、VML ライブラリー関数、最適化ソルバーは、OpenMP* を使用してスレッド化されています。インテル® MKL は完全にスレッドセーフです。
インテル® MKL 9.1 からの変更点
- リンクモデルの変更
- インテル® MKL 10.0 では、製品が再設計され、インターフェイス、スレッディング、および計算コンポーネントが物理的に分割されました。これにより、複数のライブラリーへのリンクを組み合わせて、1 つのパッケージでさまざまなインターフェイス、コンパイラー、プロセッサーの設定をサポートします。 この 1 つのパッケージでさまざまな設定を可能するために、複数の階層 (レイヤー) が提供されています。この新しいインテル® MKL アーキテクチャーは、インテル® MKL のパフォーマンスを活用するための労力を最小限に抑えながら、多種多様な顧客のニーズに最大限対応できるよう設計されています。詳細は、『インテル® MKL ユーザーズガイド』の「インテル® MKL 並列処理の使用」を参照してください。
- 1 つのインテル® MKL 製品でクラスター対応機能が利用可能
- インテル® MKL 9.1 では、インテル® MKL には 2 つのバージョン (インテル® MKL Windows 版とインテル® MKL Windows 版クラスター・エディション) がありました。インテル® MKL 10.0 では、この 2 つのバージョンが 1 つに統合され、ScaLAPACK、分散メモリーFFT、および以前のクラスター・エディションに含まれていたその他すべての機能を含むインテル® MKL Windows 版となりました。
インテル® MKL 9.1 からのパフォーマンスの向上
- BLAS
- インテル® Core™2 Quad プロセッサーにおける DGEMM と SGEMM
- 大規模な二乗および外積の問題において、1 スレッドでは 1.04 倍、8 スレッドでは 1.1 ~ 1.15 倍に向上
- その他のレベル 3 実数関数では、大規模な問題において 1.02 ~ 1.04 倍に向上
- LAPACK
- いくつかの 1 次方程式ソルバー (?spsv/?hpsv/?ppsv、?pbsv/?gbsv、?gtsv/?ptsv、?sysv/?hesv) のパフォーマンスが大幅に向上。帯格納形式および圧縮格納形式で複数の右辺を持つ場合のパフォーマンスが最大 100 倍に向上
- 三重対角化ルーチン (?sytrd/?hetrd) が 4 倍に高速化したことにより、すべての対称固有値問題 (?syev/?syev、?syevd/?heevd、?syevx/?heevx、?syevr/?heevr) が大幅に向上
- 圧縮格納形式の三重対角化ルーチン (?sptrd/?hptrd) が、以前のバージョンと比べて 3 倍に高速化したことにより、圧縮格納形式のすべての対称固有値問題 (?spev/?hpev、?spevd/?hpevd、?spevx/?hpevx) が大幅に向上
- 直交/ユニタリー変換を適用する多くのルーチン (?ormqr/?unmqr、?ormrq/?unmrq、?ormql/?unmql、?ormlq/?unmlq) が最大 2 倍に高速化
- FFT
- 2 の累乗サイズの複素数の 1D FFT が、1 つのスレッドで最大 1.8 倍に向上
- 64 ビット・モードで実行するインテル® 64 対応システムにおいて
- 複素数 2D FFT が、単精度と倍精度ともに、1 つのスレッドで最大 1.1 倍に高速化
- 複素数の並列 2D FFT が、8 つのスレッドで最大 1.2 倍 (単精度の場合)/最大 1.3 倍 (倍精度の場合) に高速化
- 複素数の並列 3D FFT が、単精度と倍精度ともに、最大 1.15 倍に高速化
- 複素数の並列逆方向 2D FFT が、最大 1.3 倍 (単精度の場合)/最大 1.4 倍 (倍精度の場合) に高速化
- インテル® Itanium® プロセッサーにおいて、2^22 よりも大きなサイズの単精度複素数の逆方向 1D FFT が、4 つのスレッドでは最大 2 倍、8 つのスレッドでは最大 2.4 倍に高速化
- VML/VSL
- 他社製のプロセッサー上で、VSL 関数のパフォーマンスが平均で約 2 倍に向上
- 他社製のプロセッサー上で、VML の vdExp、vdSin、および vdCos 関数が平均で約 1.18 倍に向上
- IA-32 およびインテル® 64 プロセッサー上で、VSL 関数が平均で約 1.07 倍に向上
その他の機能の向上
- スレッディング・モデルの変更
- 以前は、OMP_NUM_THREADS が未定義の場合、インテル® MKL のスレッド数はデフォルトで 1 でした。インテル® MKL 10.0 では、OMP_NUM_THREADS 環境変数が未定義の場合、デフォルトのスレッド数はコンパイラーのランタイム・ライブラリー (例: libguide) によって決定されます。インテル® MKL は、問題のサイズと MKL_DYNAMIC やその他のスレッディング環境変数の値に基づいて複数のスレッドを作成することがあります。
- スレッディングに対するユーザー・コントロールを追加するために、MKL_NUM_THREADS、MKL_DOMAIN_NUM_THREADS、および MKL_DYNAMIC 環境変数と対応するライブラリー・ルーチンが追加されています。詳細は、『ユーザーズガイド』を参照してください。
- インターフェイスの変更
- C DFTI の C/C++ インターフェイスの ILP64 が変更されました。MKL_LONG 型は、C DFTI インターフェイスの long 型の代わりに使用されます。
例: long Dfti… (…, long, …) の代わりに MKL_LONG Dfti… (…, MKL_LONG, …)
Windows では long は 4 バイトですが、ILP64 では MKL_LONG は 8 バイトです。詳細は、『ユーザーズガイド』を参照してください。
- すべての行列タイプ向けアウトオブコア (OOC) PARDISO
- バージョン 10.0 では、PARDISO に対するアウトオブコア・メモリーのサポートが追加されています。コンピューターのメモリー容量は大幅に増加されましたが、依然として、問題サイズが大きすぎるためにインメモリーで解くことができない問題が多数あります。問題サイズの制限に直面している場合は、新しいアウトオブコア PARDISO の解を試してみてください。インテルでは、パフォーマンスの最適化における新たな可能性を特定しており、今後、パフォーマンスを大幅に向上させるインテル® MKL のアップデートをリリースする予定です。
- ZGEMM3M 関数と CGEMM3M 関数
- これらの複素関数は、4 つのブロック行列乗算と 4 つの加算の代わりに、3 つのブロック行列乗算と 5 つの加算を使用することで、演算回数を減らします。これらの関数は、インテル® MKL の標準 BLAS の拡張で、それぞれ ZGEMM と CGEMM と同じ構文を使用します。
- [Z/C]GEMM の代わりに [Z/C]GEMM3M を使用することで、結果のビットごとの対応をせずに、パフォーマンスを最大 1.25 倍に向上することができます。
- 反復スパースソルバー
- スパース BLAS
- スパースのゼロベースのインデックスのサポートが追加されました。
- 単精度スパース BLAS 行列-ベクトル乗算関数 mkl_scsrgemv が追加されました。
- FFT
- 直列/並列 1D FFT の倍精度データの初期化を回避することで、DftiCommitDescriptor 関数が最適化されています。この関数は、より高速に実行可能となり、メモリーの割り当て量も減りました。
- ベクトル・マス・ライブラリー (VML)
- 新しい VML EP (強化されたパフォーマンス) 精度モードが追加されました。EP ルーチンは、LA (低精度) ルーチンよりも非常に高速で、少なくとも 11 ビット (単精度の場合)/26 ビット (倍精度の場合) 正確です。詳細は、『インテル® MKL マニュアル』の vmlSetMode 関数の説明を参照してください。
- 新しく追加された VML 関数: v{s,d,c,z}Mul、v{c,z}MulByConj、v{c,z}Div、v{s,d,c,z}Add、v{s,d,c,z}Sub、v{c,z}Conj、v{s,d}Expm1、v{s,d}Log1p、v{s,d}Sqr、v{s,d}Pow3o2、v{s,d}Pow2o3、v{s,d,c,z}Abs、v{c,z}CIS
- ベクトル・スタティスティカル・ライブラリー (VSL)
- (ILP64 だけでなく) すべての VSL バージョンでの vslSkipAheadStream サービス・ルーチンの 64 ビット nskip パラメーターのサポート
- vslCopyStream サービスルーチン、vslCopyStreamState サービスルーチン、および VSL QRNG 初期化スキームにおけるユーザー定義のパラメーターの問題を解決
- PDE のサポート
- 各種 DCT/DST 変換をサポートするように、三角変換が拡張されました。本リリースから、偶数サイズの変換に加えて、奇数サイズの変換もサポートされています。
- FFTW 3.x ラッパー
- 実数-実数 (DCT/DST) 変換向けの新しい FFTW 3.x ラッパーが開発されました。
ハードウェア
インテル® MKL をインストールして使用するには、サポートしているプロセッサーを搭載したシステムと 600MB のディスク空き容量 が必要です (ホストシステムでは、インストール時、ファイルのダウンロードおよびテンポラリー・ファイル用に別途 200MB の空き容量も必要)。
サポートしているプロセッサー - インテル® MKL は、以下のプロセッサーをサポートしています。
- インテル® Core™ プロセッサー・ファミリー
- インテル® Xeon® プロセッサー・ファミリー
- インテル® Itanium® プロセッサー・ファミリー
- インテル® Pentium® 4 プロセッサー・ファミリー
- インテル® Pentium® III プロセッサー
- インテル® Pentium® プロセッサー (300 MHz 版以上)
- インテル® Celeron® プロセッサー
- AMD* Athlon* および Opteron* プロセッサー
ソフトウェア
インテル® MKL を使用するには、サポートしているコンパイラーおよび MPI 実装が必要です。
以下のオペレーティング・システムをサポートしています。
- Windows Vista* (IA-32/インテル® 64 アーキテクチャー)
- Windows 2003 Server (IA-32/インテル® 64/Itanium® アーキテクチャー)
- Windows XP (IA-32 アーキテクチャー)
- Windows XP Pro x64 Edition (インテル® 64 アーキテクチャー)
- Windows 2003 Server CCE (インテル® 64 アーキテクチャー)
- Windows XP 64-bit Edition 2003 (Itanium® アーキテクチャー)
以下の C/C++ コンパイラーおよび Fortran コンパイラーをサポートしています。
- インテル® Visual Fortran コンパイラー 9.1 Windows 版
- インテル® Visual Fortran コンパイラー 10.0 Windows 版
- インテル® C++ コンパイラー 9.1 Windows 版
- インテル® C++ コンパイラー 10.0 Windows 版
- Microsoft* Visual C++* 2002
- Microsoft Visual C++ .NET 2003
- Microsoft Visual C++ 2005 Team Suite
- Microsoft Platform SDK compiler (インテル® 64/Itanium アーキテクチャー)
インテル® MKL は、以下の MPI 実装をサポートしています。
- インテル® MPI ライブラリー 3.1
- Windows Server 2003 Compute Cluster Edition
- MPICH-2 1.0.x for Windows
注意: MPI リンク情報については、doc ディレクトリーにある『ユーザーズガイド』を参照してください。
注意:
- インテル® MKL には、Fortran インターフェイスおよびそのデータ構造が含まれている部分と、C インターフェイスおよびそのデータ構造が含まれている部分があります。インテル® MKL を別のコンパイラーとリンクする方法については、doc ディレクトリーにある『ユーザーズガイド』を参照してください。
インテル® MKL のインストール時に、インストールに関するガイダンスが提供されます。ステップごとにインストール手順を説明したファイル (ファイル名: Install.htm) へのリンクが示されます。このファイルは doc ディレクトリー以下にあります。
ドキュメント・インデックス (doc ディレクトリーにある Doc_Index.htm) には、インテル® MKL の主要なドキュメントがリストされています。すべてのドキュメントの一覧は、『ユーザーズガイド』の第 3 章を参照してください。
インテル® MKL 10.0 におけるダミー・ライブラリーの制限事項:
- ダミー・ライブラリーは、#pragma 構造体では使用できません。ダミー・ライブラリーは、インテル® コンパイラーからドライバーとしてリンクできません。詳細は、『ユーザーズガイド』の第 3 章を参照してください。
ポアソン・ライブラリー・ルーチンにおける制限事項:
- 本リリースには、『インテル® MKL リファレンス・マニュアル』の「第 13 章 偏微分方程式」で説明されているポアソン・ライブラリー・ルーチンは含まれていません。これらのルーチンは、インテル® MKL 10.0 のアップデートで提供されます。
インテル® MKL 10.0 におけるスパースソルバーおよび最適化ソルバーの制限事項:
- スパースソルバーと最適化ソルバーは静的なライブラリー関数のみ提供されています。
インテル® MKL 10.0 における FFT 関数の制限事項:
- DftiCopyDescriptor 関数は実装されていません。
- DFTI_TRANSPOSE モードは、デフォルトケースでのみ実装されます。
- DFTI_REAL_STORAGE モードにはデフォルト値のみ指定可能で、DftiSetValue 関数 (例えば、DFTI_REAL_STORAGE = DFTI_REAL_REAL) によって変更することはできません。
- ILP64 バージョンのインテル® MKL では、現在 1 つの次元の長さが 231-1 を超える FFT をサポートしていません。231-1 を超える 1D FFT、またはいずれかの次元が 231-1 を超える多次元 FFT は、"DFTI_1D_LENGTH_EXCEEDS_INT32" エラーメッセージを返します。各次元の長さが 231-1 を超えない限り、231-1 個を超える成分を持つ多次元 FFT を実行することができます。
- クラスター FFT 関数の配列サイズでいくつかの制限があります。詳細は、『リファレンス・マニュアル』 (mklman.pdf) を参照してください。
- 動的にリンクされているアプリケーションでクラスター FFT 関数を使用する場合、インテル® MKL のスタティック・インターフェイス・ライブラリーもリンクする必要があります。
例:
-Wl,--start-group $MKL_LIB_PATH/libmkl_intel_lp64.a $MKL_LIB_PATH/libmkl_cdft_core.a -Wl,--end-group $MKL_LIB_PATH/libmkl_blacs_intelmpi20_lp64.a -L$MKL_LIB_PATH -lmkl_intel_thread -lmkl_core -lguide -lpthread
インテル® MKL 10.0 における LAPACK 関数の制限事項:
- ILAENV 関数 (ローカル環境の問題依存パラメーターを選択するために LAPACK ルーチンから呼び出される) は、ユーザーのバージョンでは代用できません。
インテル® MKL のベクトル・マス・ライブラリー (VML) 関数とベクトル・スタティスティカル・ライブラリー (VSL) 関数における制限事項:
- mkl_vml.fi を使用すると、TYPE ERROR_STRUCTURE 長に関する警告が生成されることがあります。
- VML/VSL 関数が共有ライブラリーから使用されている場合、インテル® MKL のスタティック・ライブラリーはリンクできません。
- インテル® MKL 関数への参照を含むカスタム DLL をビルドする必要がある場合、インテル® MKL DLL ビルダーツールを使用します。その他の DLL ビルド機能はサポートされていません。
インテル® MKL 10.0 における区間演算関数の制限事項:
- 区間ライブラリーには、インテル® Fortran コンパイラーの libifcore ライブラリーが必要です。
- 区間演算関数には、SSE 命令対応のプロセッサーが必要です。
インテル® MKL 10.0 における ScaLAPACK 関数の制限事項:
- PJLAENV 関数はユーザーのバージョンでは代用できません。この関数は、ローカル環境の問題依存パラメーターを選択するために ScaLAPACK ルーチンから呼び出されます。
- MPICH2 で –genvlist を使用して MKL_BLACS_MPI などのグローバル環境変数を取得する際に、問題が発生することがあります。この場合、[コントロール パネル] から必要な環境変数を設定してください。[スタート] メニューから [設定] - [コントロール パネル] - [システム] - [詳細設定] を選択して、[環境変数] ボタンをクリックします。
ILP64 バージョンのインテル® MKL における制限事項:
- ILP64 バージョンのインテル® MKL では、完全なライブラリー機能が含まれていません。ILP64 バージョンに含まれる機能の一覧は、doc ディレクトリーにある『ユーザーズガイド』を参照してください。
Java* サンプルにおける制限事項:
- Java サンプルは、インテル® MKL のスタティック・ライブラリーでは使用できません。Java サンプルの実行には、インテル® MKL ダイナミック・ライブラリーを使用してください。
インテル® コンパイラー 10.0 でインテル® MKL のサンプル・ソース・コードをコンパイルする場合は、/Od オプションを使用することを推奨します。現在のビルドスクリプトは、このオプションを指定しません。また、これらのコンパイラーでは、デフォルトでベクトル化を行うように変更されました。
VSL 関数はすべて、エラーステータスを返します。例えば、VSL の API のデフォルトは、以前のバージョンのインテル® MKL ではサブルーチン形式でしたが、現在では関数形式です。つまり、Fortran のユーザーは、VSL ルーチンを関数として呼び出す必要があります。
関数の呼び出し例:
errstatus = vslrnggaussian(method, stream, n, r, a, sigma)
サブルーチンの呼び出し例:
call vslrnggaussian(method, stream, n, r, a, sigma)
ただし、インテル® MKL では、下位互換用にサブルーチン形式も用意しています。サブルーチン形式のインターフェイスを使用するには、手動で include\mkl.fi ファイル内の include 'mkl_vsl.fi' という行を include 'mkl_vsl_subroutine.fi' に変更し、mkl_vsl.fi ファイルの代わりに mkl_vsl_subroutine.fi ファイルを組み込みます。VSL の API 変更は、C/C++ ユーザーには影響しません。
ハイパースレッディング・テクノロジー (HT テクノロジー) は、各スレッドが異なる演算を実行している場合、またはプロセッサー上に十分に活用されていないリソースがある場合に特に有効です。インテル® MKL は、このどちらにもあてはまりません。ライブラリーのスレッド化された部分が効率的に (利用可能なリソースの大半を使用して) 実行され、各スレッドで同一の演算を行っているためです。HT テクノロジーを有効にせずにインテル® MKL を使用すると、より高いパフォーマンスを得られることがあります。
メモリー割り当て: より高いパフォーマンスを得るため、インテル® MKL によって割り当てられたメモリーは解放されません。これは仕様で、インテル® MKL ルーチンがメモリーバッファーを操作するのは 1 回 (割り当て) だけです。ツールによっては、これをメモリーリークとして報告することがあるため、注意してください。必要に応じて、メモリーを解放することができます。プログラムでインテル® MKL の MKL_FreeBuffers
(
)
関数を使用するか、各呼び出しの後に MKL_DISABLE_FAST_MM
環境変数を設定します (詳細は、doc
ディレクトリーにある『ユーザーズガイド』を参照してください)。しかし、これらの方法を使用してメモリーを解放しても、メモリーリークが報告されなくなるとは限りません。実際、ライブラリーを複数回呼び出す場合、各呼び出しごとに新しいメモリーの割り当てが必要になり、報告される数は増えることもあります。上記の方法で解放されなかったメモリーは、プログラムの終了時にシステムによって解放されます。この制限を回避するには、上記のようにメモリー管理を無効にします。
その他: GMP および区間ソルバーのコンポーネントは、ソルバー・ライブラリーにあります。インテル® 64 および IA-64 プラットフォームの場合、これらのコンポーネントは LP64 インターフェイスのみサポートしています。
セルフヘルプおよびユーザーフォーラム
チュートリアル、基本操作のヒント、製品に関する既知の問題点、製品のエラッタ、互換性に関する情報、FAQ など、多くのセルフヘルプ情報については、インテル® ソフトウェア開発製品テクニカルサポート Web サイト (http://www.intel.com/software/products/support/index.htm) を参照してください。問題に対する解決策を素早く得たり、製品を効果的に使用するための情報を入手することができます。
インテル® MKL ユーザーフォーラム (http://softwareforums.intel.com/ids/board?board.id=MKL) (英語) は、ユーザー同士の意見交換や専門家への質問などの場としてご利用いただけます。
問題の送信方法
インテルでは、お客様からのフィードバックを非常に重視しております。本製品で提供されるツールについてテクニカルサポートを ・pしたり、製品アップデートを入手するには、インテル® ソフトウェア開発製品レジストレーション・センター (https://registrationcenter.intel.com/) で登録する必要があります。
インテル® MKL に関する質問または問題は、サポート (https://registrationcenter.intel.com/support/) までお問い合わせください。
注意: 特定の国に対してアクセスを制限する必要があるソースコードが含まれている場合は、サポートが可能かどうかを判断するため、ソースコードを送る前にサポート担当者に確認してください。
インテル® プレミアサポートから問題を送信する場合は、次の手順に従ってください。
- ブラウザーで Java および Java スクリプトが有効になっていることを確認します。
- http://premier.intel.com (英語) にアクセスします。
- ログイン名とパスワードを入力します。どちらも大文字と小文字が区別されます。半角英数字と一部の記号のみ使用できます。
- [Submit Issues] ボタンをクリックします。
- [Product Type] ドロップダウン・リストから [Development Environment (tools,SDV,EAP)] を選択します。
- ソフトウェアまたはライセンスに関連する問題の場合は、[Product Name] ドロップダウン・リストから [Intel® MKL for Windows*] を選択します。
- 質問を入力し、ウィンドウの残りのフィールドも記入します。
問題の報告や製品に対するご意見を送信する際は、次のガイドラインに従ってください。
- 問題、その他ご意見を入力してください。
問題を報告する場合は、その問題を再現できるように、できるだけ具体的に (コンパイラーやリンク・コマンドライン・オプションなども含めて) 説明してください。可能な場合は、テストファイル (小さなもの) を含めるようにしてください。
- システム構成情報を入力します。
オペレーティング・システム、インストールされているアプリケーションの名前とバージョンなど、問題の特定に役立つと思われるすべての情報が含まれていることを確認してください。
インテル® ソフトウェア開発製品の詳しい情報については、http://www.intel.co.jp/jp/software/products/ を参照してください。関連製品には次のものが含まれます。
- インテル® ソフトウェア・カレッジでは、インテル® アーキテクチャーおよびソフトウェア最適化技法を習得するための、インタラクティブなチュートリアル、ドキュメント、コードサンプルを提供しています。
- インテル® VTune™ パフォーマンス・アナライザーは、アプリケーションの CPU 利用状況を評価し、パフォーマンスを改善するために修正を行うべきかどうかを判断するのに役立ちます。
- インテル® C++ コンパイラーおよびインテル® Fortran コンパイラーは、最新の IA-32 プロセッサーおよびインテル® Itanium® プロセッサーをサポートしており、ソフトウェアの実行を高速化する上で重要な役割を果たします。
- インテル® パフォーマンス・ライブラリーには、各種のインテル® プロセッサー向けに最適化されたルーチン群が収められています。インテル® MKL は、数学、科学、工学などのソフトウェア開発に役立つ、最新のインテル® Pentium® プロセッサーおよびインテル® Itanium® プロセッサー向けに最適化された線形代数、高速フーリエ変換、ベクトル演算関数を提供します。インテル® インテグレーテッド・パフォーマンス・プリミティブは、複数のインテル® アーキテクチャーおよびオペレーティング・システム用のハイパフォーマンスなソフトウェアをビルドするクロスプラットフォーム・ツールで構成されています。
エンド・ユーザー・ソフトウェア使用許諾契約書 (End User License Agreement) で言及されているように、製品のドキュメントおよび Web サイトの両方で完全なインテル製品名の表示 (例えば、"インテル® マス・カーネル・ライブラリー") とインテル® MKL ホームページ (www.intel.com/software/products/mkl) (英語) へのリンク/URL の提供を正確に行うことが最低限必要です。
インテル® MKL の一部の基となった BLAS の原版は http://www.netlib.org/blas/index.html (英語) から、LAPACK の原版は http://www.netlib.org/lapack/index.html (英語) から入手できます。LAPACK の開発は、E.Anderson、Z. Bai、C. Bischof、S. Blackford、J. Demmel、J. Dongarra、J. Du Croz、A. Greenbaum、S. Hammarling、A. McKenney、D. Sorensen らによって行われました。LAPACK 用 FORTRAN 90/95 インターフェイスは、http://www.netlib.org/lapack95/index.html (英語) にある LAPACK95 パッケージと類似しています。すべてのインターフェイスは、純粋なプロシージャー用に提供されています。
インテル® MKL クラスター・エディションの一部の基となった ScaLAPACK の原版は http://www.netlib.org/scalapack/index.html (英語) から入手できます。ScaLAPACK の開発は、L.S. Blackford、J. Choi、A.Cleary、E.D'Azevedo、J.Demmel、I. Dhillon、J. Dongarra、S. Hammarling、G. Henry、A. Petitet、K.Stanley、D.Walker、R. C. Whaley らによって行われました。
インテル® MKL 10.0 の PARDISO は、バーゼル大学 (University of Basel) から無償で提供されている PARDISO 3.2 (http://www.pardiso-project.org (英語)) と互換性があります。
本リリースのインテル® MKL の一部の FFT 関数は、カーネギーメロン大学からライセンスを受けて、SPIRAL ソフトウェア生成システム (http://www.spiral.net/ (英語)) によって生成されました。本リリースのインテル® MKL の一部の FFT 関数は、ヒューストン大学からライセンスを受けて、UHFFT ソフトウェア生成システムによって生成されました。SPIRAL の開発は、Markus Püschel、José Moura、Jeremy Johnson、David Padua、Manuela Veloso、Bryan Singer、Jianxin Xiong、Franz Franchetti、Aca Gacic、Yevgen Voronenko、Kang Chen、Robert W.Johnson、Nick Rizzolo らによって行われました。
本資料に掲載されている情報は、インテル製品の概要説明を目的としたものです。本資料は、明示されているか否かにかかわらず、また禁反言によるとよらずにかかわらず、いかなる知的財産権のライセンスを許諾するためのものではありません。製品に付属の売買契約書『Intel's Terms and Conditions of Sale』に規定されている場合を除き、インテルはいかなる責を負うものではなく、またインテル製品の販売や使用に関する明示または黙示の保証 (特定目的への適合性、商品性に関する保証、第三者の特許権、著作権、その他、知的所有権を侵害していないことへの保証を含む) にも一切応じないものとします。
インテルによる書面での同意がない限り、インテル製品は、インテル製品の停止を起因とする人身傷害または死亡を想定して設計されていません。
インテル製品は、予告なく仕様や説明が変更される場合があります。機能または命令の一覧で「留保」または「未定義」と記されているものがありますが、その「機能が存在しない」あるいは「性質が留保付である」という状態を設計の前提にしないでください。これらの項目は、インテルが将来のために留保しているものです。インテルが将来これらの項目を定義したことにより、衝突が生じたり互換性が失われたりしても、インテルは一切責任を負いません。この情報は予告なく変更されることがあります。この情報だけに基づいて設計を最終的なものとしないでください。
本資料で説明されている製品には、エラッタと呼ばれる設計上の不具合が含まれている可能性があり、公表されている仕様とは異なる動作をする場合があります。現在確認済みのエラッタについては、インテルまでお問い合わせください。
最新の仕様をご希望の場合や製品をご注文の場合は、お近くのインテルの営業所または販売代理店にお問い合わせください。
本書で紹介されている注文番号付きのドキュメントや、インテルのその他の資料を入手するには、1-800-548-4725 (アメリカ合衆国) までご連絡いただくか、インテルの Web サイトを参照してください。
インテル・プロセッサー・ナンバーはパフォーマンスの指標ではありません。プロセッサー・ナンバーは同一プロセッサー・ファミリー内の製品の機能を区別します。異なるプロセッサー・ファミリー間の機能の区別には用いません。詳細については、http://www.intel.co.jp/jp/products/processor_number/ を参照してください。
本資料には、開発の設計段階にある製品についての情報が含まれています。
Intel、インテル、Intel ロゴ、Intel Core、Celeron、Itanium、Pentium、VTune、Xeon は、アメリカ合衆国およびその他の国における Intel Corporation の商標です。
* その他の社名、製品名などは、一般に各社の表示、商標または登録商標です。
© 2007 Intel Corporation. 無断での引用、転載を禁じます。