マルチコアのプロセッサの普及に伴い、アプリケーション開発における並列化への対応の必要性が言われている。このほど、C/C++開発者を対象に、インテルが開発したMicrosoft Visual Studio C++向けの並列化実装ツールセット「インテル Parallel Studio」(Parallel Studio)が5月27日にリリースされた。2009年5月13日~5月15日の3日間、東京ビッグサイトにて開催された「ソフトウェア開発環境展」(SODEC)のエクセルソフト株式会社ブースにて、そのデモンストレーションを実施していた。
3つの並列化ツールを融合した「インテル Parallel Studio」
Parallel Studioは、複数のコアを持つプロセッサにおいて、各コアを効率よく使うアプリケーションを開発するための4つのツール「インテル Parallel Composer」(Parallel Composer)、「インテル Parallel Inspector」(Parallel Inspector)、「インテル Parallel Amplifier」(Parallel Amplifier)、そして「インテル Parallel Advisor」(Parallel Advisor)からなる製品セットの総称で、このうち来年リリース予定のParallel Advisorを除く3つの製品が今回リリースされた。いずれもMicrosoft Visual Studio C++(Visual Studio)のプラグインとして、Visual Studioの画面から呼び出して使用する。
Parallel Composerは、並列化のためのC/C++コンパイラーとライブラリで、マルチコア・プロセッサに最適化されたアプリケーションのコーディングをサポートする。コンパイラーは、既にリリース済みの「インテル C++ コンパイラー」を基にしており、OpenMPやラムダ関数などをサポートしている。並列化のためのライブラリとしては、C++のコードを簡単に並列化するためのテンプレート・ライブラリー「インテル スレッディング・ビルディング・ブロック」(TBB)や、画像・信号処理において、並列化に最適化された関数が揃っている「インテル インテグレーテッド・パフォーマンス・プリミティブ」(IPP)がある。また並列化されたコード用にVisual Studioのデバッガを拡張する「Parallel Debugger Extension」も含まれる。
Parallel Inspectorは、アプリケーションを分析してスレッド特有の潜在的なエラーやメモリーエラーを検出する機能を持ち、データ競合や、デッドロック、メモリーエラーといったエラー要因の検出作業を支援するツール。メモリーエラー検出機能については、これまでの製品になかったもので、ユーザーからの要望も多かったという。
Parallel Amplifierは、アプリケーションのパフォーマンス低下原因の一つであるhotspot(処理にかかる時間が多い箇所)を検出し、アプリケーションのチューニングに活用できるツール。開発したアプリケーションを分析し、Concurrency(いくつのコアを活用しているか)や、処理の待ち時間などをVisual Studioの画面から呼び出してグラフ表示できる。