プロセッサーの性能引き出すコンパイラー
インテル Parallel Studio XE 2019
Composer Edition 日本語版
昨今のインテルプロセッサー上で高速な演算を行うためには並列化とベクトル化が必要です。ベクトル化とは、ループで演算される配列要素を一度で複数処理できるようにすることです。これまで256bitに収まる配列データを一度に複数処理することができましたが、最新のプロセッサーではインテルAVX-512という命令セットが実装され、512bitに収まる配列データを一度に処理できるようになりました。
ベクトルプログラミングによる実装は、特定の世代に対応した専用命令を記述する必要があり、プロセッサーに関する高度な知識が要求されます。
インテルコンパイラーでは各プロセッサーの世代に対して効果的なベクトル化を実装する強力な自動ベクトル化機能が用意されており、初心者の方でも簡単に素早くベクトル化を実装できるように支援します。
例えば、下記のC言語のループ処理に対して、256bitの処理をすることができるインテルAVX2の命令セットを使用した場合、図1のように1命令で4つのデータを処理する事ができるので、ループの反復数が1/4になり、処理に要する時間を減らすことが期待できます。
コアの増加とあわせて、ベクトル化により複数処理が可能なデータ数の拡大も、インテルプロセッサーの性能向上における重要な役割を持っています。
これらの最新プロセッサーの性能を引き出すために、インテルコンパイラーは、現在から将来のインテルプロセッサーに対して、強力かつ簡単なベクトル化の実装を支援します。
公開されているサンプルコード(vec_samples)に対して、インテル コンパイラーの自動ベクトル化機能を使用したスピードアップを表1に示します。
新バージョンでは、512bitのベクトル化サポートの強化と、最新プロセッサー向けの対応が含まれています。さらなる効果的なベクトル化には、より上位のエディションであるProfessionalEditionに含まれるインテルAdvisorから、ベクトル化による性能を向上させるためのアドバイスを得ることができます。
製品詳細、無料評価版はこちらから www.xlsoft.com/intel/cs4
★各注文番号クリックで製品詳細ページを表示
© 2019 Intel Corporation. 無断での引用、転載を禁じます。Intel、インテル、Intel ロゴ、Intel Coreは、アメリカ合衆国および/またはその他の国における Intel Corporationまたはその子会社の商標です。
* その他の社名、製品名などは、一般に各社の表示、商標または登録商標です。
価格は予告なく変更される場合があります。
インストール条件については、各ソフトウェアの利用許諾書を必ずご覧ください。
マークが付いている商品のご注文はWEBからは出来ません。詳しくはこちらをご覧ください。