• Showing Page History #49211

Show page source of サンプルコードで知るParallel_Studioの並列化機能_p2 #49213

[[PageNavi(NavigationList)]]


'''Parallel Composerを利用してソースコードをコンパイル''' Parallel Studioをインストールすると、Visual Studioに各ツールに対応したツールバーが追加される('''図3''')。プログラムのコンパイルにParallel Composerに含まれるインテル C++ コンパイラーを利用するには、ツールバーの「Use Intel C++」ボタンをクリックすればよい('''図4''')。

[[Thumb(83e16078b73d5a33ac2a7dc6c98a3ee7.png, caption=図3 Visual Studioに追加されたツールバー)]]

[[Thumb(2ce16304690516fa23a0707469c9a135.png, caption=図4 「Intel C++」ツールバーで使用するコンパイラを切り替えられる)]]

 コンパイラとしてインテル C++ コンパイラーを選択すると、プロジェクトのプロパティに設定項目が追加され、インテル C++ コンパイラー特有の最適化設定や並列化設定がGUIで行えるようになる。

 今回、このようにしてParallel Composerで最大限の最適化設定('''図5''')でコンパイルしたプログラムと、Visual C++でコンパイルしたプログラムを比較したところ、Parallel Studioでコンパイルしたプログラムのほうが実行時間が短くなった。このようにParallel Composerを使用して単純にコンパイラを変更するだけでも、プログラムを高速化できることが分かる('''表2''')。

[[Thumb(a99b8df93093dac64f03f3a8fb518019.png, caption=図5 Parallel Composerによる最大限の最適化設定)]]

{{{ html
<h6>表2 Parallel StudioおよびVisual C++それぞれでコンパイルしたプログラムの実行時間比較</h6>
<table class="wikitable" border="1">

<tr><th>使用コンパイラ</th><th>実行時間</th></tr>
<tr><td>Parallel Studio(インテル C++ コンパイラー)</td><td>1335ミリ秒</td></tr>
<tr><td>Visual C++</td><td>1475ミリ秒</td></tr>

</table>
}}}
'''Parallel Amplifierを利用したパフォーマンスの測定''' 続いて、Parallel Amplifierを利用してプログラムのパフォーマンスを測定し、どの部分がボトルネックとなっているかを調査する。Parallel Amplifierを利用するには、Parallel Amplifierツールバーで調査する内容を選択し、「Profile」ボタンをクリックするだけだ('''図6''')

[[Thumb(8540057ada50f6fea5cec47499e252bc.png, caption=図6 Parallel Amplifierツールバーで調査する内容を選択し、「Profile」をクリックすると調査が開始される)]]

 調査が完了すると、'''図7'''のように調査結果が表示される。'''図7'''ではプログラム中の関数が呼び出された順に表示されており、また一覧表示されている関数名をクリックすると、そのソースコードの詳細やそれぞれのステートメントの実行時間などを表示できる('''図8''')。これらより、今回の調査結果ではプログラム中のsetQueen()関数での処理が多くの時間を消費しているということが分かる。

[[Thumb(084a53059e53a520ef9ba502e56d566f.png, caption=図7 Parallel Amplifierを用いたパフォーマンス計測)]]

[[Thumb(9732a2ab1f28f1bf2c49a90423c62b6d.png, caption=図8 Parallel Amplifierのソースコード閲覧画面)]]



[[PageNavi(NavigationList)]]