【開催報告】インテル® Trace Analyzer/ Collector を使ったMPI アプリケーションの性能解析 (4/18)

2012年4月16日 | Last modified: 2018年8月21日

Ch. 1.1

Trace Analyzerによる性能解析

 インテル株式会社主催で「インテル® Trace Analyzer/ Collector を使ったMPI アプリの性能解析」が平成24年4月18日(水)13時から17時まで計算科学センタービル2階実習室にて行われました。
 セミナーは、アプリケーションの最適化の基礎を学ぶため、1人1台の講習会端末を使い、行列積計算と素数判定のコードを例にして、インテルコンパイラのオプションを変えることによって、各々のコードの実行速度がどのように変化するか確かめることから始まりました。結果、コンパイルオプションでは行列積計算の実行時間は短くなるものの、素数判定の計算ではほとんど変化しないことを確認しました。続いて、自動並列化(-parallel)、OpenMPディレクティブ有効化(-openmp)のオプションを指定しマルチスレッド化を行うことで素数判定の計算についても実行時間の短縮が実現することを体験しました。
 次に、行列積計算と素数判定のコードのMPI並列版を題材にMPIアプリケーションの性能解析を行うインテル® Trace Analyzer/ Collectorの利用法を実習で学びました。性能解析のための情報(トレースファイル)を収集する機能(Collector)をコンパイル時に実装する方法と実行時に実装する方法について実習しました。さらにトレースファイルの生成オプションについて、デフォルトではジョブが中断された場合には出力されないが、Fale-safeモードでは一定間隔で出力されるためジョブが中断しても生成される一方で負荷が高いので常用すべきではないことを学びました。
 続いてCollectorで生成されたトレースファイルをインテル® Trace Analyzerを使ってプロファイル解析を行う実習を行い、マニュアルを読むだけでは分かりにくいGUIを利用したMPI アプリケーションの負荷バランスの確認方法や、MPI 通信の遅延発生箇所を特定する方法を学習しました。さらに効率よく解析を行うために、データの集約法、通信メッセージ量のグラフ化、各ノード間の1対1通信量、転送速度、転送時間、転送回数の表示などを実際に行いました。
 予定時間を超過するも、セミナーの最後では、使い方だけでなく、ソフトウェアの導入形態など活発な情報交換が行われ無事終了しました。

今回、ご参加頂きました皆様に感謝いたします。
ご都合がつかなかった皆様には、次回6月19日(火)(13時から17時まで計算科学センタービル2階実習室)への参加をご検討願います。
 また、土曜日の開催も検討しておりますので、土曜日なら参加できるという具体的な声を、request@j-focus.or.jpまでお寄せください。

プログラム :
13:00- 13:05 ( 5分) 開始の挨拶
13:05- 13:55 (50分) インテル コンパイラー、インテル MPI を使用する最適化概要
13:55- 14:00 ( 5分) 休憩
14:00- 14:50 (50分) 性能解析ツール、インテル Trace Analyzer/ Collector 概要
14:50- 15:00 (10分) 休憩
15:00- 15:50 (50分) 目的に応じたインテル Trace Collector の設定方法
15:50- 16:00 (10分) 休憩
16:00- 16:50 (50分) インテル Trace Analyzer による解析結果の表示と分析
16:50- 17:00 (10分) Q&A
17:00 終了


MPIアプリ概要

MPIアプリ概要


セミナーの様子

セミナーの様子