インテル® Parallel Studio XE 2019 の最新情報
久保寺 陽子30-3-30 プレゼンテーション
CVCG 開発製品部門 (DPD)2018 年 10 月 5 日更新

パフォーマンスを引き出すコードを生成インテル® Parallel Studio XE

ハイパフォーマンスでスケーラブルな HPC、エンター
プライズ、およびクラウド・アプリケーションを作成▪ インテルのハードウェアとパフォーマンスの能力を最大限に利用▪ インテル® Xeon® スケーラブル・プロセッサー向けのインテル® アド
バンスト・ベクトル・エクステンション 512 (インテル® AVX-512) を使用して一貫したプログラミングを実現▪ 最新のベクトル化、マルチスレッド、マルチノード、およびメモリーの最適化手法を利用して簡単にコードを作成および現代化▪ 最先端のコンパイラー、数値ライブラリー、パフォーマンス・プロファ
イラーにより最新のハードウェア向けにソフトウェアを確実に最適化▪ プライオリティー・サポートによりインテルのエンジニアに技術的な質問を直接問い合わせ1
C、C++、Fortran、および Python* ソフトウェア開発者を支援
標準規格に基づく並列モデルを使用: OpenMP*、MPI、インテル® TBB
1ライセンス購入者のみ、サポートサービス更新時には割引も提供

学生/アカデミック向けにインテル® ソフトウェア・ツールの割引も用意

2

並列コードを高速化
エンタープライズ、クラウド、HPC、AI 向けの高速でスケーラブルな並列アプリケーションを開発
生産性

パフォーマンス

最新の言語標準と OpenMP* 標準
規格の利用、主要なコンパイラーおよび IDE と互換
インテル® VTune™ Amplifier により、コードの高速化の可能性を素
早く特定

最新のインテル® アーキテク
チャー向けに実証済みのベク
トル化、マルチスレッド、マルチノード、およびメモリーの最適化手法を利用して簡単にコードを現代化
プライオリティー・
サポートの利用

インテル® Parallel Studio XE はソフトウェア開発者に最適な開発環境を提供

ベクトル化、マルチスレッド、
マルチノードをサポート
インテル® MPI ライブラリーによる優れたスケーラビリティー
スケーラビリティーの実現

3

パフォーマンスによってもたらされる利点▪ インテル® ハードウェアの性能を最大限に引き出してパフォーマンスを向上▪ アプリケーションとワークロードの処理をスピードアップ▪ 効率と開発者の生産性を向上▪ ビジネスの課題を解決し、革新を促進▪ フォワード・スケーリング、互換性と相互運用性を促進

インテル® Parallel Studio XE▪ 現在および将来のインテル® プラットフォームでパフォーマンスを向上▪ ハイパフォーマンスで安定したスケーラブルな並列コードを少ない労力で簡単に作成

4

3 つのエディション – Composer、Professional、Cluster
無料評価版のダウンロード
4インテル® Parallel Studio XE のコンポーネント
包括的なソフトウェア開発ツールスイート
Cluster Edition

Composer Edition

Professional Edition

ビルド
コンパイラーとライブラリー

解析
解析ツール

スケール
クラスターツール

インテル® VTune™
Amplifierインテル® MPI ライブラリー

インテル® Inspector

インテル® Trace Analyzer &Collector

インテル® C/C++
コンパイラー
最適化コンパイラー

インテル® Fortran
コンパイラーインテル® MKL2
インテル® IPP3

画像、信号、データ処理

最適化コンパイラー

インテル® DAAL4

インテル® TBB1

インテル® Distribution
for Python*C++ スレッド・ライブラリー

ハイパフォーマンスなスクリプト

メッセージ・パッシング・
インターフェイス・ライブラリー

パフォーマンス・
プロファイラー

メモリー/スレッドのデバッガー

インテル® Advisor

ベクトル化の最適化とスレッドのプロトタイプ生成
フローグラフ解析

MPI チューニングと解析

インテル® Cluster Checker

クラスター診断エキスパート・システム

オペレーティング・システム: Windows*、Linux*、macOS*

インテル® アーキテクチャー・ベースのプラットフォーム

コードを強力に支援 - isus.jp/intel-parallel-studio-xe/
1インテル® スレッディング・ビルディング・ブロック
2インテル® マス・カーネル・ライブラリー
3インテル® インテグレーテッド・パフォーマンス・プリミティブ
45

インテル® Parallel Studio XE とインテル® System Studio の違い
インテル® Parallel Studio XE
Composer Edition Professional Edition
インテル® C++ コンパイラー
インテル® (Visual) Fortran コンパイラー
インテル® Distribution for Python*
インテル® MKL
インテル® DAAL
インテル® IPP
インテル® TBBOpenCL* ツール
IoT コネクション・ツール (UPM/MRAA/クラウド)
インテル® VTune™ Amplifier
インテル® Inspector
インテル® Advisor
インテル® Energy Profier
インテル® Graphics Performance Analyzer
インテル® System Debugger (JTAG)
インテル® Debugger Extensions for WinDbg
インテル® MPI ライブラリー
インテル® Trace Analyzer & Collector
インテル® Cluster Checker

■
■
■
■
■
■
■

インテル® System Studio

Cluster Edition

■
■
■
■
■
■
■

■
■
■
■
■
■
■

■
■
■

■
■
■

Composer
Edition■Professional
Edition■

Ultimate
Edition
■

■
■
■
■
■
■

■
■
■
■
■
■
■
■
■
■
■

■
■
■
■
■
■
■
■
■
■
■
■
■

■
■
■
Linux* のみ

OpenCL および OpenCL ロゴは、Apple Inc. の商標であり、Khronos の使用許諾を受けて使用しています。

6

ビルド

解析

スケール

インテル® C++ コンパイラー
インテル® Fortran コンパイラー
インテル® Distribution for Python*
インテル® MKL
インテル® IPP
インテル® TBB
インテル® DAAL

インテル® VTune™ Amplifier
インテル® Advisor
インテル® Inspector

インテル® MPI ライブラリー
インテル® Trace Analyzer & Collector
インテル® Cluster Checker

Composer Edition に含まれるProfessional Edition に含まれる

Cluster Edition に含まれる

インテル® コンパイラーによる高速でスケーラブルな並列コード
最先端の C/C++ コード・パフォーマンスを実現、最新のインテル® プロセッサーの能力を最大限に活用▪ インテル® Core™ プロセッサー、インテル® Xeon® プロ
セッサーを含むインテル® アーキテクチャー向けに最適化
およびベクトル化されたコードを開発▪ 優れた並列パフォーマンスを実現 – (OpenMP* を使用した) ベクトル化とスレッド化により、インテル® AVX-512
命令を含む最新の SIMD 対応ハードウェアを最大限に活用▪ 最新の言語標準と OpenMP* 標準規格の利用、主要なコンパイラーおよび IDE との互換性

詳細: isus.jp/c-compilers/8インテル® コンパイラー: 開発者に大きな価値を提供
ソフトウェア開発者にとって重要なポイント

課題

インテル® コンパイラーの利点

パフォーマンス
最新のハードウェア・イノベーショ
高速なアプリケーション
ンを利用しなければならないを開発する必要がある

最新の x86 互換プロセッサーと命令セットの能力を最大限に引き出すことが可能

開発期間の短縮
主要な言語とプログラミング・モ
生産性を向上でき、使い デルがサポートされていなければならない
やすくなければならない

最新の Fortran、 C/C++、
OpenMP* 標準規格をサポート
し、主要なコンパイラーおよびIDE と互換性がある

スケーラビリティー
新しい世代のプロセッサーでもアプリケーションをロー 急速に増え続けるコア数とベクト
コードを変更することなくスケー
カルで開発/デバッグし、 ル幅に合わせてコードを保守しな
ラブルなパフォーマンスを実現でければならない
グローバルに配置する
きる
必要がある
9

9

インテル® コンパイラー 2019 (19.0) の新機能
C++17 標準機能の追加サポート▪ ラムダ式と定数式のサポートを向上▪ GNU* C++ コンパイラーおよび Microsoft* コンパイラーとの互換性を向上– Microsoft* Visual Studio* 2017 との統合を向上し、Microsoft* Visual Studio* 2019 (Update 4) のサポート– インテル® C/C++ コンパイラーとインテル® Fortran コンパイラーで GDB 8.0.1 をサポート

標準規格に基づく並列化により C++ 開発者を支援▪ OpenMP* 5.0 の一部をサポート▪ 最新の並列化仕様によりコードを現代化

Python* 開発環境の強化▪ インテル® Distribution for Python* をインテル® Parallel Studio XE に統合▪ tbb4py をサポート

その他▪ macOS* で Xcode* 9.4 (初期リリース)、Xcode* 10 (Update1)、Xcode* 10.1 (Update3)、Xcode* 10.2
(Update4) をサポート▪ Linux* および macOS* で権限を昇格するネイティブメソッドを追加
10

インテル® コンパイラー 2019 (19.0) の変更点
古いバージョンのサポート終了•

OS のサポートを終了予定: Red Hat* Enterprise Linux* 6、Ubuntu* 14.04 LTS/18.10、Fedora*
27/28/29、SUSE* Linux* Enterprise Server 11、Debian* 8、Microsoft* Windows* 7、Microsoft*
Windows Server* 2012、 macOS* 10.13•

IDE のサポートを終了予定: Microsoft* Visual Studio* 2013/2015、Xcode* 9.x•

Microsoft* Visual Studio* Shell のサポートを終了予定•

macOS* で IA-32 ターゲットのサポートを終了

インテル® ソフトウェア開発製品でのサポート終了*1•

インテル® Xeon Phi™ 製品関連のコンポーネントを削除•

インテル® グラフィックス・テクノロジー・コンパイラーのサポートを終了•

インテル® Debugger for Heterogeneous Compute を削除*1 詳細は、https://software.intel.com/en-us/articles/intel-parallel-studio-xe-supported-and-unsupported-product-versions (英語) を参照
11

インテル® Distribution for Python* でライブラリーを高速化
科学計算、データ解析、マシンラーニング向けのハイパフォーマンスな Python*

高速なパフォーマンス

優れた生産性

エコシステムの互換性

パフォーマンス・ライブラリー、並列化、マルチスレッド化、言語拡張

事前ビルドの高速化されたパッケージ

Python* 2.7 & 3.6、Conda、
pip をサポート

インテル® MKL とインテル® DAAL により
NumPy*/SciPy*/scikit-learn を高速化

数値計算、マシンラーニング/ディープラーニング、HPC、データ解析向けの事前ビルドの最適化されたパッケージ

Anaconda* との互換性、Conda と pip をサポート

scikit-learn、pyDAAL によるデータ解析、
マシンラーニング、ディープラーニング
Numba と Cython によるスケーリング
最適化された mpi4py、Dask & PySparkで動作

最新のインテル® アーキテクチャー向けに最適化

既存の Python* から簡単に移行可能
通常コード変更不要
Jupyter* Notebook、Matplotlib を含む

ディストリビューションと個々の最適化されたパッケージは conda と Anaconda.org、
yum/apt、Docker* イメージ (Docker*
Hub) からも利用可能

Conda ビルドレシピをパッケージに同梱

最適化はメインの Python* トランクに反映される

商用開発を含むすべてのユーザーに無償で提供

インテル® Parallel Studio XE を通して商用サポートが受けられる

オペレーティング・システム: Windows*、Linux*、macOS*1

インテル® アーキテクチャー・ベースのプラットフォーム
1インテル® Parallel Studio XE Composer Edition でのみ利用可能

詳細: isus.jp/python-distribution/
12

Python* パフォーマンスの向上

インテル® Xeon®
プロセッサー

NumPy* とインテル® MKL を利用したブラック・ショールズ・
アルゴリズムインテル® Core™ i7 プロセッサー

インテル® Xeon Phi™
プロセッサー

ハードウェア: インテル® Core™ i7-7567U プロセッサー @3.50GHz (1 ソケット、ソケットごとに 2 コア、コアごとに 2 スレッド)、32GB DDR4 @2133MHz。
インテル® Xeon® プロセッサー E5-2699 v4 @2.20GHz (2 ソケット、ソケットごとに 22 コア、コアごとに 1 スレッド、HT 無効)、256GB DDR4 @2400MHz。
インテル® Xeon Phi™ 7250 プロセッサー @1.40GHz (1 ソケット、ソケットごとに 68 コア、コアごとに 4 スレッド)、192GB DDR4 @1200MHz、16GB MCDRAM@7200MHz キャッシュモード
ソフトウェア: CentOS* 7.3.1611 (Core)、Python* 3.6.2、pip 9.0.1、NumPy* 1.13.1、SciPy* 0.19.1、scikit-learn 0.19.0。
インテル® Distribution for Python* 2018 Gold パッケージ: インテル® MKL 2018.0.0、intel_4、インテル® DAAL 2018.0.0.20170814、NumPy* 1.13.1、
py36_intel_15、OpenMP* 2018.0.0、intel_7、SciPy* 0.19.1、np113py36_intel_11、scikit-learn 0.18.2、np113py36_intel_3。
性能に関するテストに使用されるソフトウェアとワークロードは、性能がインテル® マイクロプロセッサー用に最適化されていることがあります。SYSmark* や
MobileMark* などの性能テストは、特定のコンピューター・システム、コンポーネント、ソフトウェア、操作、機能に基づいて行ったものです。結果はこれらの要因によって異なります。製品の購入を検討される場合は、他の製品と組み合わせた場合の本製品の性能など、ほかの情報や性能テストも参考にして、パフォーマンスを総合的に評価することをお勧めします。* その他の社名、製品名などは、一般に各社の表示、商標または登録商標です。ベンチマークの出典: インテル コーポレーション
www.intel.com/performance.
最適化に関する注意事項: インテル® コンパイラーでは、インテル® マイクロプロセッサーに限定されない最適化に関して、他社製マイクロプロセッサー用に同等の最適化を行えないことがあります。これには、インテル® ストリーミング SIMD 拡張命令 2、インテル® ストリーミング SIMD 拡張命令 3、インテル® ストリーミング
SIMD 拡張命令 3 補足命令などの最適化が該当します。インテルは、他社製マイクロプロセッサーに関して、いかなる最適化の利用、機能、または効果も保証いたしません。本製品のマイクロプロセッサー依存の最適化は、インテル® マイクロプロセッサーでの使用を前提としています。インテル® マイクロアーキテクチャーに限定されない最適化のなかにも、インテル® マイクロプロセッサー用のものがあります。この注意事項で言及した命令セットの詳細については、該当する製品のユーザー・
リファレンス・ガイドを参照してください。注意事項の改訂 #20110804

13

インテル® MKL による高速でスケーラブルなコード▪ 高度に最適化、スレッド化、ベクトル化された数学関数により、マシンラーニング・アプリケーションにおける計算を高速化▪ 密/スパース線形代数 (BLAS、LAPACK、PARDISO)、FFT、ベクトル演算、サマリー統計、スプラインなどの主な機能を提供▪ コードを分岐せずに各プロセッサー向けに最適化されたコードを自動ディスパッチ
▪ シングルコアのベクトル化およびキャッシュ効率を向上
する最適化

インテル® MKL に含まれる機能
密/スパース線形代数
高速フーリエ変換
ベクトル演算ベクトル RNG
高速ポアソンソルバー

その他▪ 最小限の労力で優れたパフォーマンスを達成

14

インテル® MKL 2019 の新機能
JIT 高速小行列乗算▪ JIT 機能によりインテル® アドバンスト・ベクトル・エクステンショ
ン 2 (インテル® AVX2) およびインテル® AVX-512 向け
S/DGEMM の速度を向上

スパース QR ソルバー
▪ スパース線形方程式、スパース線形最小 2 乗問題、固有値問題、
ランクと null 空間の決定などのソルバー

15多項式向け乱数生成▪ 金融、地質学、生物学分野向けに高度に最適化された多項式乱数
ジェネレーター15

インテル® Core™ プロセッサーにおいて FFT パフォー
マンスを大幅に向上 - インテル® MKL
パフォーマンス (GFLOPS)

インテル® MKL 2019 Gold と FFTW の 2D FFT パフォーマンスの比較
単精度 2D FFT - インテル® Core™ i5-7600 プロセッサー @ 3.50GHz
150
100

50

FFTW 3.3.7 bestインテル® MKL 2019 Gold0

変換サイズ (2 の累乗)
パフォーマンス結果は 2018 年 7 月 12 日時点のテスト結果に基づいたものであり、公開されている利用可能なすべてのセキュリティー・アップデートが適用されていない可能性があります。詳細については、構成の開示を参照してくだ
さい。絶対的なセキュリティーを提供できる製品はありません。
性能に関するテストに使用されるソフトウェアとワークロードは、性能がインテル® マイクロプロセッサー用に最適化されていることがあります。SYSmark* や MobileMark* などの性能テストは、特定のコンピューター・システム、コン
ポーネント、ソフトウェア、操作、機能に基づいて行ったものです。結果はこれらの要因によって異なります。製品の購入を検討される場合は、他の製品と組み合わせた場合の本製品の性能など、ほかの情報や性能テストも参考にして、パフォーマンスを総合的に評価することをお勧めします。詳細については、パフォーマンス・ベンチマーク・テストの開示 (英語) を参照してください。
2018 年 7 月 12 日時点のインテルによるテスト。システム構成: インテル® Core™ i5-7600 プロセッサー、4 コア、3.50GHz、6MB CPU キャッシュ、64GB RAM。Linux* OS: Red Hat* Enterprise Linux* 7.2。
インテル® コンパイラーでは、インテル® マイクロプロセッサーに限定されない最適化に関して、他社製マイクロプロセッサー用に同等の最適化を行えないことがあります。これには、インテル® ストリーミング SIMD 拡張命令 2、インテル® ストリーミング SIMD 拡張命令 3、インテル® ストリーミング SIMD 拡張命令 3 補足命令などの最適化が該当します。インテルは、他社製マイクロプロセッサーに関して、いかなる最適化の利用、機能、または効果も保証いたしません。本製品のマイクロプロセッサー依存の最適化は、インテル® マイクロプロセッサーでの使用を前提としています。インテル® マイクロアーキテクチャーに限定されない最適化のなかにも、インテル® マイクロプロ
セッサー用のものがあります。この注意事項で言及した命令セットの詳細については、該当する製品のユーザー・リファレンス・ガイドを参照してください。注意事項の改訂 #20110804

16

インテル® MKL の機能
線形代数

FFT

BLAS
LAPACK

多次元

ScaLAPACK
スパース
BLAS
反復法スパース
ソルバー

ScaLAPACK
スパース
BLAS

FFTW

ベクトル
RNG

サマリー
統計

ベクトル
演算

合同数

尖度

三角

WichmannHill

変化係数

メルセンヌ
ツイスター

順序統計量

インターフェイス

Sobol
クラスター
FFT

スプライン

双曲線
指数
対数

補間

信頼領域

最小/最大

累乗

Neiderreiter
非決定的

その他

分散/共分散累乗根

高速ポアソンソルバー

17

インテル® IPP により画像、ビジョン、信号、セキュリティー、ストレージ・アプリケーションのパフォーマンスを向上
画像、信号、データ処理および暗号化計算を高速化▪ マルチコア、マルチ OS、マルチプラットフォームに対応した計算集約型の高度に最適化された関数▪ ハイパフォーマンスで、使いやすい、プロダクション環境対応の API により素早くアプリケーション・パフォーマンスを向上▪ ソフトウェアの開発と保守にかかる費用を軽減し、開発期間を短縮バージョン 2019 の新機能▪

エントロピーが高いデータの LZ4 圧縮/展開パフォーマンスを向上▪

RBG イメージから CIE Lab 色モデル (およびその逆) に変換する新しい色変換関数▪

インテル® IPP Cryptography ライブラリーのオープンソース・ディストリビューション

▪

インテル® AVX-512 (英語) およびインテル® AVX2 (英語) 命令セット向けの最適化を拡張▪

各種画像処理関数に OpenMP* およびインテル® TBB のスレッド層のサポートを追加

詳細: isus.jp/intel-ipp/
18

インテル® IPP
ハイパフォーマンスで、使いやすい、プロダクション環境対応の API

画像処理

データ圧縮
信号処理

コンピューター・ビジョン
カラー変換
画像ドメイン

暗号化
ベクトル演算信号ドメイン

文字列処理

1
9

データドメインインテル® アーキテクチャー・ベースのプラットフォーム

19

データ圧縮のパフォーマンスを向上
インテル® IPP

インテル® IPP 2019 と LZ4、Zlib、LZO ライブラリーの
データ圧縮パフォーマンスの比較
2.5
2.3x

2.3x

2

1.9x

1.5

1.6x

1
0.5

1

1.2x

1

1.2x

1

1.2x

1

1

1.6x
1

1

1

0
lz4 1.8.2

lz4-hc 1.8.2

lz4-hc 1.8.2

lz4-hc 1.8.2(min)(default)(max)

オリジナル・ライブラリー

zlib 1.2.11 (fast)

zlib 1.2.11

zlib 1.2.11 (best) lzo 2.09 (1c-2)(default)
インテル® IPP 201920

パフォーマンス結果は 2018 年 8 月 15 日時点のテスト結果に基づいたものであり、公開されている利用可能なすべてのセキュリティー・アップデートが適用されていない可能性があります。詳細については、構成の開示を参照してくだ
さい。絶対的なセキュリティーを提供できる製品はありません。
性能に関するテストに使用されるソフトウェアとワークロードは、性能がインテル® マイクロプロセッサー用に最適化されていることがあります。SYSmark* や MobileMark* などの性能テストは、特定のコンピューター・システム、コン
ポーネント、ソフトウェア、操作、機能に基づいて行ったものです。結果はこれらの要因によって異なります。製品の購入を検討される場合は、他の製品と組み合わせた場合の本製品の性能など、ほかの情報や性能テストも参考にして、パフォーマンスを総合的に評価することをお勧めします。詳細については、パフォーマンス・ベンチマーク・テストの開示 (英語) を参照してください。
2018 年 8 月 15 日時点のインテルによるテスト。システム構成: ハードウェア: インテル® Core™ i5-7600 プロセッサー @ 3.50GHz、4 コア、ハイパースレッディング無効。キャッシュ: L1=32KB、L2=256KB、L3=6MB。メモリー:64GB。Linux* OS: Red Hat* Enterprise Linux* Server 7.2。
インテル® コンパイラーでは、インテル® マイクロプロセッサーに限定されない最適化に関して、他社製マイクロプロセッサー用に同等の最適化を行えないことがあります。これには、インテル® ストリーミング SIMD 拡張命令 2、インテル® ストリーミング SIMD 拡張命令 3、インテル® ストリーミング SIMD 拡張命令 3 補足命令などの最適化が該当します。インテルは、他社製マイクロプロセッサーに関して、いかなる最適化の利用、機能、または効果も保証いたしません。本製品のマイクロプロセッサー依存の最適化は、インテル® マイクロプロセッサーでの使用を前提としています。インテル® マイクロアーキテクチャーに限定されない最適化のなかにも、インテル® マイクロプロ
セッサー用のものがあります。この注意事項で言及した命令セットの詳細については、該当する製品のユーザー・リファレンス・ガイドを参照してください。注意事項の改訂 #20110804

20

インテル® TBB による高度なスレッド化
スレッド化手法を利用して C++ でマルチコア・パフォー
マンスとヘテロジニアス・コンピューティングを活用▪ CPU、GPU、FPGA にわたって計算負荷の高い作業を並列処理 — C++
で高レベルのシンプルなソリューションを提供▪ 並列プログラミング向けの最も機能が豊富で包括的なソリューション
▪ 優れた移植性、構成の容易性、コスト、アプローチを備えた将来にわたる
スケーラビリティーバージョン 2019 の新機能▪
▪
▪
▪

フローグラフの新機能により並列性とヘテロジニアスへの対応が向上(タスク・アナライザーと OpenCL* デバイス選択を向上)
新しいテンプレートにより汎用 C++11 多次元配列を最適化
C++17 Parallel STL、OpenCL*、Python* conda 言語をサポート
Linux*、Windows*、Android*、macOS* のサポートを拡張

詳細: isus.jp/intel-tbb/
OpenCL および OpenCL ロゴは、Apple Inc. の商標であり、Khronos の使用許諾を受けて使用しています。

21

インテル® TBB のスレッド化モデルを利用する利点▪ スレッドを操作する代わりにタスクを指定。論理タスクをスレッドにマップ (入れ子構造の並列処理を完全サポート)。
▪ 実証済みの効率良い並列処理パターン▪ ワークスチールを使用して実行時間が不明なタスクのロードバランスをサポートし、低オー
バーヘッドのポリモーフィズムを活用▪ フローグラフ機能により依存性とデータフロー・グラフを簡単に表現▪ 高レベルの並列アルゴリズム、コンカレント・コンテナー、低レベルのビルディング・ブロック(スケーラブル・メモリー・アロケーター、ロック、アトミック操作など) を提供

22

2
2

インテル® TBB が再帰並列処理を使用する場合のスケジュール例[Data, Data+N)

範囲を分割...
[Data, Data+N/2)[Data+N/2, Data+N)
ほかのワーカースレッド
は幅優先で古い大きなチャンクのワークをスチールする.. 再帰的に分割...
[Data, Data+N/k)... GrainSize 以
下になるまでスチール可能なタスク[Data, Data+GrainSize)
スレッドは深さ優先で実行するため、局所性が得られる
23

インテル® TBB と Python* による並列処理
ソフトウェア・コンポーネントはサブコンポーネント群により構成される
各コンポーネントをスレッド化したらたいへん!
インテル® TBB は、動的にスレッドのロードバランスを調整し、効率良くオーバーサブスクリプションを管理> python -m tbb script.py

Application
Component 1
Subcomponent 1
Subcomponent
1

NumPy*

SciPy*

pyDAAL

Subcomponent 2

Joblib

Dask

スレッド
プール

Subcomponent
1

Subcomponent
1
Subcomponent
1

Numba

Subcomponent K
Subcomponent
1Component N
Subcomponent 1

インテル®
MKL

インテル®
DAAL

Python* 向けのインテル®
TBB モジュール

Subcomponent
1

Subcomponent M
Subcomponent
1

Subcomponent
1

インテル® TBB ランタイム

24

インテル® DAAL によるエッジでの解析のスピードアップ
マシンラーニングおよびビッグデータ解析のパフォーマ
ンスを高速化▪ アプリケーションがより速くより優れた予測を行えるように支援▪ 最高のパフォーマンスを引き出せるようにデータの取り込みとアルゴリズムの計算を最適化

バージョン 2019 の新機能
新しいアルゴリズム▪ ハイパフォーマンス・ロジスティック回帰、最も広く利用されている
分類アルゴリズム▪ 広範なアプリケーションのニーズを満たす、オフライン、ストリーミン ▪ 拡張勾配ブースティング機能、ユーザー定義のコールバックによる
不正確な分割計算およびアルゴリズム・レベルの計算のキャンセル
グ、分散型使用モデルをサポート
により柔軟性を拡張▪ エッジデバイスとクラウドサービス間で解析ワークロードを分割して▪ ユーザー定義の CSV/IDBC データソースのデータ変更プロシー
アプリケーション全体のスループットを最適化
ジャー、広範な特徴抽出および変換手法を実装

詳細: isus.jp/intel-daal/

前処理

変換

解析

モデリング

展開、
フィルタリング、
正規化

集計、
次元縮小

サマリー統計、クラスタリングなど

マシンラーニング (訓練)、パラメーター推定、
シミュレーション

検証

仮説検証、
モデルエラー

意思決定

予測、
決定木など

25

データ変換および解析アルゴリズム
インテル® DAAL

データセット
の基礎統計

相関と
依存関係

低次
モーメント

コサイン
距離

行列の因数分解

次元縮小

外れ値検出

SVD

PCA

単変量

多変量

四分位数

相関距離

QR

相関ルール
マイニング
(アプリオリ)

順序
統計量

分散共分散
行列

コレスキー

最適化ソルバー(SGD、AdaGrad、lBFGS)

数学関数(exp、log、…)

バッチ処理をサポートするアルゴリズム

バッチ、オンライン、分散処理をサポートするアルゴリズム

26

ビルド

解析

スケール

インテル® C++ コンパイラー
インテル® Fortran コンパイラー
インテル® Distribution for Python*
インテル® MKL
インテル® IPP
インテル® TBB
インテル® DAAL

インテル® VTune™ Amplifier
インテル® Advisor
インテル® Inspector

インテル® MPI ライブラリー
インテル® Trace Analyzer & Collector
インテル® Cluster Checker

Composer Edition に含まれるProfessional Edition に含まれる

Cluster Edition に含まれる

インテル® VTune™ Amplifier パフォーマンス・プロファイラーによるアプリケーションのパフォーマンスとスケーラビリティーの解析とチューニング
高速でスケーラブルなコードを迅速に開発▪ C、C++、Java*、Python*、Go* に加えて、これらの言語が混在したコードを正確にプロファイル▪ CPU、スレッド、メモリー、キャッシュ、ストレージほか
を最適化▪ 時間を節約: 詳細な解析により洞察が得られるバージョン 2019 の新機能 (ハイライト)▪ 拡張されたアプリケーション・パフォーマンス・スナップ
ショット: 新しいデータ選択と一時停止/再開により有益な
2
データに注目 (Linux*)▪ 物理コアの CPU 使用率を解析
8▪ サーバー/クラウド・アプリケーションの JIT プロファイルを向上▪ 改良されたユーザー・インターフェイスにより単純化された
プロファイル・ワークフローを提供
28

さまざまな分野に対応した豊富なプロファイル機能インテル® VTune™ Amplifier パフォーマンス・プロファイラー

基本プロファイル

メモリーを効率良く使用

hotspot

データ構造と NUMA のチューニング

スレッド解析

高速ストレージ向けに最適化

コンカレンシー、ロックと待機
OpenMP*、インテル® TBB

I/O と計算のインバランス

マイクロアーキテクチャー解析

サマリー + 拡張カウンター

キャッシュ、分岐予測、…

ベクトル化 (+ インテル® Advisor)
FLOPS 推定

MPI (+ インテル® Trace Analyzer &Collector)
スケーラビリティー、インバランス、
オーバーヘッド

容易な OpenCL* & GPU 解析
インテル® Media SDK との統合
有用なメディア・スタック・メトリック

低オーバーヘッドの Java*、Python*、Go*
マネージド + ネイティブコード

コンテナー
Docker*、Mesos*、LXC

OpenCL および OpenCL ロゴは、Apple Inc. の商標であり、Khronos の使用許諾を受けて使用しています。

29

インテル® VTune™ Amplifier - バージョン 2019 の新機能の詳細
パフォーマンス・プロファイラー
さらに使いやすく▪ 分かりやすいチューニング・ワークフローと単純化されたセットアップ▪ 新しい視覚化により全般的な複雑なカウンター情報を単純化

プラットフォーム・プロファイラー▪ 長いデータ収集によりハードウェア構成の問題点と適切にチューニングされていない
アプリケーションを検出

I/O 解析 - SPDK ストレージと DPDK ネットワーク・パフォーマンスのチュー
ニング▪ 実際のワークが行われていない “空の” ポーリングサイクルを測定

CPU のロードバランスの調整 - CPU 解析

30▪ パフォーマンスが向上するように CPU のロードバランスを調整▪ メモリー転送時間、CPU バランス、CPU コンテキスト・スイッチ、FPU 使用率、
ワークロード待機時間などを評価

クラウド、コンテナー、Linux* での .NET サポートの追加▪ LLVM または HHVM PHP サーバーでの JIT プロファイル▪ OpenJDK* 9 および Oracle* JDK 9 での Java* 解析▪ Linux* での .NET のサポートおよび Hyper-V* のサポート
30

ワークロードとシステム構成のチューニング
インテル® VTune™ Amplifier
検出

パフォーマンス・メトリック▪ 構成の問題点▪ 適切にチューニングされていないソフトウェア▪ キャプチャー時間の拡張 (数分～数時間)▪ 低オーバーヘッド － 粗粒度のメトリック▪ OS/ハードウェア・パフォーマンス・カウンターのサンプリング▪ スクリプトによる解析課簡単な RESTful API

ターゲットユーザー▪ インフラストラクチャー・アーキテクト▪ ソフトウェア・アーキテクト/QA

31

インテル® Advisor によるベクトル化とスレッド化の最適化
新しいハードウェア世代ごとにパフォーマンスが向上

200

パフォーマンスの良い現代化された
コード
ベクトル化
とスレッド化‘自動’ ベクトル化では不十分
多くの場合は明示的なプラグマと最適化が必要

150

130x
100

▪ インテル® アドバンスト・ベクトル・エクス
テンション (インテル® AVX) および
インテル® AVX-512 向けにベクトル化▪ 効率良いメモリーアクセス▪ スレッド化

スレッド化

機能

50
0

2010

2012

2013

2014

2016

2017

ベクトル化
シリアル

インテル® Xeon® インテル® Xeon® インテル® Xeon® インテル® Xeon® インテル® Xeon® インテル® Xeon®
プロセッサープロセッサープロセッサープロセッサープロセッサー Platinum 81xx
X5680
E5-2600
E5-2600 v2
E5-2600 v3
E5-2600 v4
プロセッサー
開発コード名製品ファミリー 製品ファミリー 製品ファミリー 製品ファミリー
開発コード名Westmere
開発コード名
開発コード名
開発コード名
開発コード名 Skylake Server
Sandy Bridge
Ivy Bridge
Haswell
Broadwell▪ ベクトル化とその最適化▪ メモリーパターン解析▪ 迅速なスレッドのプロトタイプ生成32

ベンチマーク: 2 項オプション価格モデル software.intel.com/en-us/articles/binomial-options-pricing-model-code-for-intel-xeon-phi-coprocessor (英語)
パフォーマンス結果は 2017 年 8 月時点のテスト結果に基づいたものであり、公開されている利用可能なすべてのセキュリティー・アップデートが適用されていない可能性があります。詳細については、構成の開示を参照してください。絶対的なセキュリティーを提供できる製品はありません。性能やベンチマーク結果について、さらに詳しい情報をお知りになりたい場合は、http://www.intel.com/benchmarks/ (英語) を参照してください。2010 - 2017 のシステム構成については、補足資料の「ベクトル化およびスレッド化するか、パフォーマンスを諦めるか」にあるベンチマークを参照してください。2017 年 8 月時点のインテルによるテスト。

詳細: isus.jp/intel-advisor-xe/

インテル® コンパイラーでは、インテル® マイクロプロセッサーに限定されない最適化に関して、他社製マイクロプロセッサー用に同等の最適化を行えないことがあります。これには、インテル® ストリーミング SIMD 拡張命令 2、インテル® ストリーミング SIMD 拡張命令 3、インテル® ストリーミング SIMD 拡張命令 3 補足命令などの最適化が該当します。インテルは、他社製マイクロプロセッサーに関して、いかなる最適化の利用、機能、または効果も保証いたしません。本製品のマイクロプロセッサー依存の最適化は、インテル® マイクロプロセッサーでの使用を前提としています。インテル® マイクロアーキテクチャーに限定されない最適化のなかにも、インテル® マイクロプロ
セッサー用のものがあります。この注意事項で言及した命令セットの詳細については、該当する製品のユーザー・リファレンス・ガイドを参照してください。注意事項の改訂 #20110804

32

‘自動’ ベクトル化では不十分
優れたコンパイラーはベクトル化の最適化によりさらなる利点を得ることができる － インテル® Advisor

コンパイラーは常にベクトル化するとは限らない▪ インテル® Advisor でループ伝播の依存性を確認▪ 依存性がない場合はベクトル化を強制し、プラグマ
simd (C++)、SIMD ディレクティブ(Fortran) を使用

これまでに紹介したベンチマークは
すべて ’自動ベクトル化’ ではない。
ベクトル化を強制し、さらなるパフォー
マンスを引き出すため、コンパイラー・
ディレクティブを使用している。

すべてのベクトル化が効率的であるわけではない▪ ストライド 1 のほうがストライド 2 以上よりもキャッ
シュ効率が良い － インテル® Advisor を使用して解析▪ SIMD Data Layout Templates (英語) を利用してデータレイアウトの変更を検討

構造体配列はデータを直感的に整理するのには適しているが、配列構造体よりも効率が悪いため、
SIMD Data Layout Templates(英語) を利用してベクトル化に適した効率良いレイアウトに
データをマップする。

33

ブレークスルーのベクトル化パフォーマンスを実現
インテル® Advisor － ベクトル化アドバイザー

素早くベクトル化を最適化必要なデータとガイダンス▪ 最も大きな利点が得られる箇所をベクトル化▪ ベクトル化を妨げているものを素早く特定▪ 効率良いベクトル化のためのヒント▪ 安全にコンパイラーによるベクトル化を強制▪ メモリーストライドを最適化▪ コンパイラー診断 + パフォーマンス・データ+ SIMD 効率▪ 問題の検出と修正に関する推奨事項▪ ループ伝播の依存性解析▪ メモリー・アクセス・パターン解析

インテル® AVX-512 対応ハードウェアの有無に関係なくインテル® AVX-512 向けに最適化
34

設計、チューニング、デバッグ、実装
開発を妨げることなく設計可能 — インテル® Advisor のスレッドのプロトタイプ生成問題▪ アプリケーションをスレッド化してもパフォーマンスがそれほど向上しない▪ "スケーラビリティーの限界" に達したのか?
▪ 同期による問題からリリースを延期

データに基づくスレッド設計▪
▪
▪
▪

複数の選択肢のプロトタイプを素早く生成
大規模システムでのスケーリングを予測
スレッド化を実装する前に同期エラーを発見
開発を妨げることなく設計可能より少ない労力とリスクで、より大きな効果が得られる並列処理を実装「インテル® Advisor により、並列化候補のプロトタイプを素早く生成し、開発者の時間と労力を節約することができました。」
Sandia National Laboratories
シニア・テクニカル・スタッフ
Simon Hammond 氏
35

並列処理を視覚化
インテル® Advisor - フローグラフ・アナライザー (FGA)▪ コードスタブおよびインテル® TBB フローグラフを視覚的に生成して、並列 C++ プログラムの生成を開始▪ アルゴリズムのノードやエッジをクリックしてズームし、並列データとプログラムフローを理解▪ アルゴリズムのロードバランス、コンカレンシー、その他の並列特性を解析し、プログラムを細かくチューニング

インテル® TBB または OpenMP* 5.0 (ドラフト) OMPT API を使用

36効率的な最適化手法の発見
インテル® Advisor - キャッシュを考慮したルーフライン解析

ルーフライン・パフォーマンスの詳細な情報▪ パフォーマンスの悪いループをハイライト▪ 各ループの「最大」パフォーマンスを表示– 最適化可能なループ– 最適化する価値のあるループ▪ ボトルネックの原因の可能性を表示

37▪ 次の最適化ステップを提案

Onera (フランス国立航空宇宙研究所)
ソフトウェア・アーキテクト、Nicolas Alferez 氏「インテル® Advisor の新しい “統合ルーフライン” は素晴らしい機能です。メモリー転送の最適化とベクトル化という重要で難しい課題に、ステップ・バイ・ステップのアプローチで対処できるの
です。」

37

キャッシュを考慮したルーフラインの例
ベクトル加算ピークよりも下の場合

メモリールーフの下または近くの場合• MAP 解析を実行する
適切なキャッシュの最適化を行う• キャッシュを最適化できない場合は、アルゴリズ
ムを見直して AI を上げる[Survey Report] の [Traits] 列で FMA が使用されているか確認。使用されていない場合は、FMA が使用されるようにコードを変更するか、オプションを使用する。
FLOPS

スカラー加算ピークのすぐ上の場合[Survey Report] でベクトル化の効率を確認。効率が悪い
場合は、推奨事項に従って改善する。

FMA ピーク

ベクトル加算ピーク

スカラー加算ピーク

スカラー加算ピークの下の場合…
[Survey Report] でループがベクトル化されているか確認。
ベクトル化されていない場合は、可能であればベクトル化
されるようにする。必要に応じて、依存性解析を実行して、安全にベクトル化を強制できるか確認する。

演算強度 (AI)38

インテル® Inspector によるメモリーとスレッドのデバッグ
メモリーリーク、異常、データ競合、デッドロックの特定とデバッグ
正当性検証ツールにより ROI が 12%-21%1 向上▪ 早期に問題を発見したほうが修正コストが少なくて済む▪ 競合やデッドロックは簡単に再現できない▪ メモリーエラーをツールなしで発見するのは困難

デバッガー統合により迅速な診断が可能▪ 問題の直前にブレークポイントを設定▪ デバッガーで変数とスレッドを確認

バージョン 2019 の新機能

不揮発性メモリーエラーを発見▪
▪
▪
▪

不足している/冗長なキャッシュフラッシュ
ストアフェンスの不足
アウトオブオーダーの不揮発性メモリーストア
PMDK トランザクションの Redo (やり直し) ログエラー

新しい情報: インテル® Inspector - 永続性インスペクターの使用法

詳細: isus.jp/intel-inspector-xe/
1コスト要因 - Square Project による分析 - CERT: U.S. Computer Emergency Readiness Team および Carnegie Mellon CyLabNIST: National Institute of Standards & Technology : Square Project の結果

39

3
9

ビルド

解析

スケール

インテル® C++ コンパイラー
インテル® Fortran コンパイラー
インテル® Distribution for Python*
インテル® MKL
インテル® IPP
インテル® TBB
インテル® DAAL

インテル® VTune™ Amplifier
インテル® Advisor
インテル® Inspector

インテル® MPI ライブラリー
インテル® Trace Analyzer & Collector
インテル® Cluster Checker

Composer Edition に含まれるProfessional Edition に含まれる

Cluster Edition に含まれる

インテル® MPI ライブラリーにより分散アプリケーションのパフォーマンスを大幅に向上
パフォーマンス、スケーラビリティー、ファブリックの柔軟性

分散コンピューティング向けの標準規格準拠の最適化された MPI ライブラリー▪ オープンソースの MPICH 実装をベースに開発▪ 低レイテンシー、高帯域幅、高スケーラビリティー向けにチューニング▪ 柔軟な展開を可能にするマルチファブリック・サポート

バージョン 2019 の新機能
▪ 新しい MPI コードベース － MPI-CH4 (エクサスケー
ルへの道を開く)▪ 優れたスケーラビリティーと CPU パスの短縮▪ 優れた MPI マルチスレッド・パフォーマンス

▪ 最新のインテル® Xeon® スケーラブル・プロセッサー
をサポート

詳細: isus.jp/intel-mpi-library/41インテル® MPI ライブラリーの概要
アプリケーション

最適化された MPI アプリケーション・パフォーマンス
• アプリケーション固有のチューニング

CFD

クラッシュ

気候

OCD

BIO

その他...

• 自動チューニング
• インテル® Omni-Path ファブリックをサポート

1 つのファブリック向けにアプリケーションを開発

複数のベンダーとの互換性と低レイテンシー

インテル® MPI ライブラリー• 業界トップレベルのレイテンシー

実行時にインターコネクト・ファブリックを選択• OpenFabrics* インターフェイス (OFI) により、ファブリック向けに最適化されたパフォーマンスをサポート

高速な MPI 通信• 最適化された集合操作

TCP/IP

Omni-Path
ファブリックInfiniBand*

iWarp

共有
メモリー

…その他の
ネットワークファブリック
最適化された MPI パフォーマンス

持続性のあるスケーラビリティー• ネイティブ InfiniBand* インターフェイス・サポートにより、低レイテン
シー、高帯域幅、メモリー使用量の軽減を実現

安定性に優れた MPI アプリケーション• インテル® Trace Analyzer & Collector とシームレスに連携

クラスター

インテル® MPI ライブラリー – 1 つの MPI ライブラリー
で複数のファブリック向けの開発、保守、テストが可能
42

ハイパフォーマンス MPI アプリケーションのプロファイルと解析
インテル® Trace Analyzer & Collector

MPI アプリケーション向けの強力なプロファ
イラー、解析、視覚化ツール▪

低オーバーヘッドで正確なプロファイル、解析、正当
性チェック

▪

チューニングと最適化に必要なプロセスの相互作用、
hotspot、ロードバランスを簡単に視覚化▪

柔軟なワークフロー: コンパイル、リンク、または実行

バージョン 2019 の新機能▪

小規模な更新と拡張▪

最新のインテル® Xeon® スケーラブル・プロセッサー
をサポート

詳細: isus.jp/itatc/
ロードマップに関する注意事項: ここに記載されているすべての情報は、予告なく変更されることがあります。
インテルの最新の製品仕様およびロードマップをご希望の方は、インテルの担当者までお問い合わせください。

43

ハイパフォーマンスな計算クラスター向けの広範な診断ツールセット
インテル® Cluster Checker (Linux*)

クラスターシステムの状態を確認▪ クラスターシステムの詳細を提供するエキスパート・システム・アプ
ローチ– システム・ヘルス・チェック: 問題の特定、推奨アクションの提示▪ 幅広いフレームワークを提供、統合サポート用 API▪ 操作やパフォーマンスに影響する可能性のある 100 項目を超える特性をチェック － 稼働時間と生産性を向上

バージョン 2019 の新機能: 出力と機能により使いやす
さと機能を向上▪ 単一コマンドで実行を単純化▪ 全体的なサマリーを含む新しい出力方式– ‘CRITICA’、‘WARNING’、または ‘INFORMATION’ 問題の評価を簡素化– 問題、診断、観測の詳細を含むログファイルへの出力を拡張▪ Slurm 使用時の自動ノード検出機能を追加▪ クラスターの状態の 2 つのスナップショットを比較して変更を特定

アプリケーション開発者、クラスター・アーキテクト/
ユーザー、システム管理者向け

44

重要
どのような最適化の可能性があるか?
答えはアプリケーションに依存する最適化を開始する前に問題を高レベルで理解する
インテル® Advisor – ルーフライン解析
アプリケーション・パフォーマンス・スナップショット
インテル® VTune™ Amplifier – HPC パフォーマンス特性解析

特にアプリケーションがクロスノードよりもクラスターでスケールする場合は、通信の問題に対応する必要がある
単一ノードの最適化では、一般に次の問題に対応スレッドの問題

ベクトル化の問題
メモリー/ストレージの問題

並列ハードウェアでパフォーマンスを最適化
インテル® Parallel Studio XE

繰り返し作業
クラスター
でスケーリ
ングできる
か?

N

MPI
チューニングクラスターでない場合は
スキップ

Y

効率良く
スレッド化されて
いるか?

Y

ベクトル化

N

メモリー帯域幅に影響されるか?

N

Y
スレッド化

帯域幅の
最適化

46

診断を支援するパフォーマンス解析ツール
インテル® Parallel Studio XE
クラスター
でスケーリ
ングできる
か?

N

MPI
チューニングインテル® Trace
Analyzer & Collector
MPI チューナー

Y

効率良くスレッド化されて
いるか?

Y

ベクトル化

N

N

Y

スレッド化
インテル® VTune™
Amplifier

メモリー帯域幅に影響されるか?

インテル®
Advisor

帯域幅の最適化
インテル® VTune™
Amplifier47

ハイパフォーマンスな実装を支援するツール
インテル® Parallel Studio XE
クラスター
でスケーリ
ングできる
か?

N

インテル® MPI ライブラリーとインテル® MPI Benchmarks

MPI
チューニングY
インテル® コンパイラー
効率良くスレッド化されて
いるか?

Y

ベクトル化

N

メモリー帯域幅に影響されるか?

Y

スレッド化

帯域幅の
最適化

N

インテル® MKL
インテル® IPP
(メディアおよびデータ・ライブラリー)
インテル® DAALOpenMP*
インテル® TBB
(スレッド・ライブラリー)48

プライオリティー・サポートの利用利点▪ パフォーマンスと生産性を向上 - インテル® プロセッサーでコードのパフォー
マンスを最大限に引き出す方法、パフォーマンス・ボトルネックや開発の課題を解消する方法などを問い合わせ可能▪ インテルのエンジニアに直接問い合わせることができ、機密の問い合わせや
コードサンプルを送信可能▪ 技術的な質問やその他の製品ニーズに対するヘルプ▪ 製品の新しいアップデートおよび以前のバージョンへの無料アクセス▪ サポートサービス更新時の大幅な割引
すべての開発者向けの関連情報▪ エキスパート・コミュニティー・サポート・フォーラム (英語)▪ 過去数十年のハイパフォーマンス・コード作成の経験を基に構築されたドキュメント・ライブラリー

4
9
SlashData の年間アワードを受賞
Developer Choice Awards 2018 (英語)
(世界中の 2 万人を超える開発者による投票)

49

さあ、始めよう
最適化に役立つ情報

iSUS (IA Software User Society)▪

インテル® ソフトウェア開発製品の日本語版や日本語ヘルプの提供▪

インテル コーポレーションのインテル® ソフトウェア・
ネットワークの記事の日本語化

インテル® Parallel Studio XE▪

概要、機能、サポート、コードサンプル (英語)▪

トレーニング資料、Tech.Decoded ウェビナー (英語)、HOW TO ビデオと記事 (英語)▪

お客様の声 (英語) & ケーススタディー▪

その他のインテル® ソフトウェア開発製品

50インテル® Code Modernization Program▪

概要 (英語)▪

ライブ・トレーニング (英語)▪

リモートアクセス

TECH ウェビナーの視聴

https://intel.ly/2PdkNhN (英語)

50

51

法務上の注意書きと最適化に関する注意事項
パフォーマンス結果は 2018 年 9 月時点のテスト結果に基づいたものであり、公開されている利用可能なすべてのセキュリティー・アップデートが適用されていない可能性があります。詳細については、構成の開示を参照してください。絶対的なセキュリティーを提供できる製品はありません。
性能に関するテストに使用されるソフトウェアとワークロードは、性能がインテル® マイクロプロセッサー用に最適化されていることがあります。SYSmark* や
MobileMark* などの性能テストは、特定のコンピューター・システム、コンポーネント、ソフトウェア、操作、機能に基づいて行ったものです。結果はこれらの要因によって異なります。製品の購入を検討される場合は、他の製品と組み合わせた場合の本製品の性能など、ほかの情報や性能テストも参考にして、パフォーマンスを総合的に評価することをお勧めします。詳細については、www.intel.com/benchmarks (英語) を参照してください。

本資料の情報は、現状のまま提供され、本資料は、明示されているか否かにかかわらず、また禁反言によるとよらずにかかわらず、いかなる知的財産権のライセンスも許諾するものではありません。製品に付属の売買契約書『Intel's Terms and Conditions of Sale』に規定されている場合を除き、インテルはいかなる責任を負うものではなく、
またインテル製品の販売や使用に関する明示または黙示の保証 (特定目的への適合性、商品性に関する保証、第三者の特許権、著作権、その他、知的財産権の侵害への保証を含む) をするものではありません。
© 2018 Intel Corporation. 無断での引用、転載を禁じます。Intel、インテル、Intel ロゴ、Intel Inside、Intel Inside ロゴ、Intel Core、Xeon、Intel Xeon Phi、VTune は、
アメリカ合衆国および / またはその他の国における Intel Corporation またはその子会社の商標です。

* その他の社名、製品名などは、一般に各社の表示、商標または登録商標です。
最適化に関する注意事項

インテル® コンパイラーでは、インテル® マイクロプロセッサーに限定されない最適化に関して、他社製マイクロプロセッサー用に同等の最適化を行えないことがあります。これには、インテル® ストリーミング SIMD 拡張命令 2、インテル® ストリーミング SIMD 拡張命令 3、インテル® ストリーミング SIMD 拡張命令 3 補足命令などの最適化が該当します。インテルは、他社製マイクロプロセッサーに関して、いかなる最適化の利用、機能、または効果も保証いたしません。本製品のマイクロプロセッ
サー依存の最適化は、インテル® マイクロプロセッサーでの使用を前提としています。インテル® マイクロアーキテクチャーに限定されない最適化のなかにも、インテル®
マイクロプロセッサー用のものがあります。この注意事項で言及した命令セットの詳細については、該当する製品のユーザー・リファレンス・ガイドを参照してください。
注意事項の改訂 #20110804

52