Parallel Studio XEで最新CPUに合ったソフトを作る

2011年2月15日(火)
エクセルソフト株式会社

VTune Amplifier XEで行うパフォーマンス分析

問題を解決するためには状況を把握するということが大事ですが、アプリケーションのパフォーマンスを向上させる場合にもこれが当てはまります。例えば、プロセッサを十分に稼働させるためにはどうすればよいかを知ることが、より良いパフォーマンスのために重要です。

まずはプロセッサーの使用率を100%にすることから始めましょう。そのためには、効率的に複数コア上で実行できるようにマルチスレッド化します。マルチスレッド化によりパフォーマンスを向上させるためには、各スレッドの動作状況や同期のタイミングを把握する必要があり、その場合、インテルVTune Amplifier XEを使用することで必要な情報を簡単に取得することができます。

一方、1コアあたりの動作速度を改善することも重要です。忙しく動作しているように見える処理も、空回りしているという可能性も考えられます。少し難しい話ですが、プロセッサの中では処理構造やキャッシュの性質などにより見た目では分からないような問題が起こっているかもしれません。これもマルチスレッド化のパフォーマンス解析と同じようにインテルVTune Amplifier XEにより検出することができます。

インテルVTune Amplifier XEを使用すると、対象アプリケーションの動作をこと細かに分析することができます。このツールではコードの変更は必要なく、実行可能なファイルとソース・コードのみで分析することができます。

インテルVTune Amplifier XEには、2つのサンプリング方法があります。

1. ユーザー・モードによるサンプリング
システムに対して定期的な割り込みを発生させ、実行中のプロセス情報やスレッド情報を取得します。これらの情報は、マルチスレッドを活用するために役立ちます。ユーザー・モードのサンプリングでは、アプリケーションのHotspot(CPU使用率の高い処理)や各スレッドの動作状況、スレッド間の同期やI/O処理による待ち状態について分析できます。
2. イベント・ベースのサンプリング
インテル・プロセッサには内部にパフォーマンス・モニタリング・ユニット(PMU)という処理した内容を保存しておくところがありますが、その情報を利用してインテルVTune Amplifier XEはハードウエアに関する情報を取得します。これらの情報は、ハードウエア特性を活用するコード改善に役立ちます。

イベント・ベースのサンプリングでは、インテルCore 2プロセッサやNehalemアーキテクチャ・プロセッサ用に、一般的なハードウエア情報(実行された命令数や、CPI値、ストール、LLCミス、分岐予測ミスなど)や、メモリー・アクセス、バス帯域幅、マイクロオペレーションのフロー問題などの分析を行える設定が用意されています。

集計結果は、関数ごと、スレッドごとなどのリスト表示や、関数のコール・スタック表示、ソース・コード/アセンブラ・コードの記述と対比など、いろいろな視点から見ることができます。また、各スレッドごとの動作状況が時系列で表示され、問題である可能性が高いと判断された項目がアドバイスとともにハイライトされます。

図3: インテルVTune Amplifier XEの画面イメージ(クリックで拡大)

インテルのソフトウエア開発製品は、プログラマがより簡単に最新のテクノロジを使用するための機能を提供します。近年ではノート・パソコンもマルチコアを採用するものがほとんどになってきました。以前、Intel Corporationのデベロッパ・プロダクツ・ディビジョンのセールス&ビジネス・デベロップメント・ディレクタであるフィル・デ・ラ・ゼルダ(Phil De La Zerda)氏とお話したところ「今後は並列化できるプログラマがより多くのチャンスをつかめる社会を作っていきたい」と語られていました。

インテルのソフトウエア開発製品には、無償評価版もあり、導入しやすくなっております。ぜひ、一度お試しください。

インテル® Parallel Studio XE

製品の詳細はこちら

インテルが開発ツール製品を一新し、より高いパフォーマンスを求める開発者に向けた開発ツール「インテル® Parallel Studio XE 2011」をリリースしました。Windows およびLinuxをサポートしており、コンパイラ「Composer XE」、デバッガ「Inspector XE」、パフォーマンス・アナライザ「VTune Amplifier XE」で構成されています。

著者
エクセルソフト株式会社
エクセルソフト株式会社は、ソフトウェア開発ツールを中心に世界中の優れたソフトウェアを日本およびアジアにおいて販売しています。コンパイラー、帳票ツール、デバイスドライバ開発ツール、ヘルプ作成ツール、セキュリティソフトウェアなど幅広い製品を提供し、今日のコンピューターユーザーの多様なニーズに応えています。ソフトウェアの日本語および他言語へのローカライズ業務も承っています。

連載バックナンバー

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています