ナビゲーションリンクをスキップ | |
印刷ビューの終了 | |
Oracle Solaris Studio 12.3: パフォーマンスアナライザの MPI のチュートリアル Oracle Solaris Studio 12.3 Information Library (日本語) |
Oracle Solaris 10 および Linux 用の MPI ソフトウェア
Oracle Solaris 11 用の MPI ソフトウェア
ClusterTools および Open MPI 用のサンプルコード
Oracle Solaris 11 の Oracle Message Passing Toolkit 用のサンプルコード
メッセージの受信待ち時間がもっとも長いランクを示すチャートを作成する
「MPI タイムライン」タブで MPI_Recv 関数のいずれかのイベントをクリックします。
関数が黄色で強調表示され、その関数の詳細が右側の「MPI タイムラインコントロール」タブに表示されます。
「MPI タイムラインコントロール」タブで、呼び出しスタックを表示します。「使用可能な場合に呼び出しスタックを表示」というラベルの付いたボタンが表示されたら、そのボタンをクリックします。
しばらくして、強調表示された状態の呼び出しスタックが「MPI タイムラインコントロール」タブに表示されます。
「選択されたイベントの呼び出しスタック」が「MPI タイムラインコントロール」タブに表示されたら、「main + 0x00000198, line 53 in "ring_c.c」をクリックします。
パフォーマンスアナライザのメインパネルで「ソース」タブをクリックします。
「Object file (unknown) not readable」のようなメッセージが表示された場合は、スタックフレーム main + 0x00000198, line 53 in "ring_c.c を選択していることを確認します。
注 - ソースが表示されるのは、そのソースが、プログラムがコレクタを通じて実行されたときにそれが入っていたのと同じ場所にある場合、あるいはそれが .er.rc または「表示」>「データ表示方法の設定」>「パスを検索」で設定された $expts パスにある場合に限られます。ソースは、-g を使用してコンパイルする必要もあります。ソースコードが表示されない場合は、ring_c バイナリとソースコードが含まれているディレクトリからアナライザを開始していない可能性があります。その場合は、パフォーマンスアナライザを終了し、ring_c が含まれているディレクトリに移動したあとで再起動します。
ソースが表示される場合、それは main() が MPI_Recv() 関数を呼び出す場所を示しているはずです。下に示すように、MPI_Recv() はソースの 53 行目から呼び出されます。高い値を持つメトリックは強調表示されます。274 の受信が 53 行目に関連付けられ、274 の送信が 60 行目の MPI_Send() に関連付けられています。
ヒント - このスクリーンショットでは、表示されるメトリック数が少なくされています。表示するメトリックをさらに選択するには、「表示」>「データ表示方法の設定」>「メトリック」を選択します。
パフォーマンスアナライザのメインパネルで「関数」タブをクリックします。
「関数」タブでは、テーブルの左側の列に同じ MPI 送信および MPI 受信メトリックが表示されます。このテーブルをソートするには、列ヘッダー内でクリックします。
ヒント - このスクリーンショットでは、「関数」タブに表示されるメトリック数が少なくされています。表示するメトリックを選択するには、「表示」>「データ表示方法の設定」>「メトリック」を選択します。
「MPI タイムライン」タブをクリックして MPI タイムラインに戻ります。
通常の「タイムライン」タブは MPI プログラムに適用されないため、それをクリックしないでください。