Parallel Studio XEで最新CPUに合ったソフトを作る
先日、第2世代のインテルCore i7プロセッサが発売されました。近年のプロセッサには演算速度を向上させるSSEという機能がすでに含まれていますが、この最新のプロセッサにはインテルAVXという、SSEが進化した機能も備わっています。インテルは、プログラマがこれらの機能を簡単に使用できるように、高速化のための開発ツールを提供しています。ここでは最新の技術を簡単にご紹介しながら、それに対応したインテルの開発ツールについて触れていきます。
最適化に必要なツール、Parallel Studio XE
インテルは長年にわたり、高速化のためのコンパイラや分析ツールを提供してきました。2010年末にリリースされた最新バージョンでは、インテルが開発ツール製品を一新し、「インテル®Parallel Studio XE 2011」に名称を変更して、さまざまな機能が追加されました。この製品はWindowsおよびLinuxをサポートしており、下記の機能が含まれています。
- インテル® Composer XE(高速化のためのコンパイラとライブラリ)
- インテル® Inspector XE(マルチスレッドとメモリー・エラーの検出)
- インテル® VTune Amplifier XE(シングル・スレッドとマルチスレッドのパフォーマンス分析)
それでは、これらのツールの役割を見ていきましょう。
Composer XEによるアプリケーションの最適化
インテルComposer XEは、インテルC++/Fortranコンパイラ12.0にあたる、最新のインテル・コンパイラが含まれるパッケージ製品です。
最新のインテルCoreプロセッサ・ファミリ(開発コードSandy Bridge)に含まれる新しい拡張命令セットであるインテルAdvanced Vector Extensions(インテルAVX)をサポートしています。インテルAVXでは、1つの命令で複数のデータを処理するSIMD演算の演算効率が向上されました。インテル・コンパイラは、インテルAVXをコンパイルのみで使用することができるベクトル化の機能が含まれています。
また、Composer XEでは、新たなC/C++向けの並列プログラミング手法として、インテルParallel Building Blocks(インテルPBB)が導入されています。このインテルPBBには、これまで提供されてきた並列化ライブラリであるインテルThreading Building Blocks(インテルTBB)に加え、並列プログラミング向けのC/C++言語拡張であるインテルCilk Plusと、汎用データ並列プログラミング・モデルであるインテルArray Building Blocks(インテルArBB)(2011年1月現在ベータ)が含まれています。
インテルPBBは、現在のマルチコア、マルチプロセッサの性能を引き出すことができ、さらに将来のメニー・コアに対応させるための高度な並列化と高速化を実現することができます。
Composer XEの最適化レポートの活用
インテル・コンパイラには、高速化のためのレポートを出力する機能があります。コンパイル時に自動並列化と並列化レポート機能を有効にすると、どのループが実際に並列化されたかを確認でき、並列化されなかった場所については、その理由も確認できます。
さらにインテルComposer XEでは、最先端のレポート機能である、ガイド付き自動並列化(Guided Auto-Parallelization - GAP)が導入されました。GAPは並列化のために何をすべきかをプログラマにアドバイスします。自動ベクトル化あるいは自動並列化されなかった個所についての情報を得られ、開発者がプログラムの最適化に、もう一歩踏み込めるようになっています。
図1: インテルComposer XEの画面イメージ(クリックで拡大) |
インテル® Parallel Studio XE
製品の詳細はこちら
インテルが開発ツール製品を一新し、より高いパフォーマンスを求める開発者に向けた開発ツール「インテル® Parallel Studio XE 2011」をリリースしました。Windows およびLinuxをサポートしており、コンパイラ「Composer XE」、デバッガ「Inspector XE」、パフォーマンス・アナライザ「VTune Amplifier XE」で構成されています。
連載バックナンバー
Think ITメルマガ会員登録受付中
全文検索エンジンによるおすすめ記事
- 並列処理を実現する製品ロードマップ
- Visual C++プログラマをサポートする「インテル(R) Parallel Studio」
- エクセルソフト、IntelのC++/Fortranコンパイラを搭載した「インテル Parallel Studio XE 2017 Composer Edition」を提供開始
- エクセルソフト、「インテル Parallel Studio XE 2019」を発表
- エクセルソフト、「インテル Parallel Studio XE 2019」を発表
- Xeon E7 v3のアーキテクチャ(後)
- 現代PCの基礎知識(1):プロセッサにまつわるアレやコレ
- Xeon E7 v3のアーキテクチャ(前)
- CUDAとGPUコンピューティングの広がり
- Xeon初のSoC、マイクロサーバー向けプロセッサのアーキテクチャ(前)