インテル(R) VTune(TM) Amplifier XE は、解析ごとに異なる時間情報を測定し、表示します。例えば、hotspot 解析とコンカレンシー解析の結果ではプログラムユニットの実行に費やされたアクティブな CPU 時間が表示され、 ロックと待機の解析結果ではイベントが発生するまで待機に要した待機時間が表示されます。
論理プロセッサーでスレッドの実行に費やした時間。複数のスレッドの場合、各スレッドの CPU 時間が合計されます。アプリケーション CPU 時間は、アプリケーションで実行されたすべてのスレッドの CPU 時間の合計です。
プログラムユニットの CPU 時間の分布は、[Bottom-up (ボトムアップ)] ペイン、[Top-down Tree (トップダウン・ツリー)] ペイン、および [Source/Assembly (ソース/アセンブリー)] ペインで確認できます。
指定されたスレッドが、同期待機や I/O 待機などのイベントが発生するまで待機に要した時間です。 インテル(R) VTune(TM) Amplifier XE はこれらの待機時間を検出します。
CPU 時間と同様に、プログラムユニットの待機時間の分布は、[Bottom-up (ボトムアップ)] ペイン、[Top-down Tree (トップダウン・ツリー)] ペイン、および [Source/Assembly (ソース/アセンブリー)] ペインで確認できます。
次の例は、8 コアのマシンでマルチスレッド・プログラムを実行した場合のさまざまな時間情報を示します。
アプリケーションの経過時間は 6 秒です。アプリケーションには 3 つのスレッドがあり、それぞれの時間情報は次のとおりです。
1 つ目のスレッドは、1 秒実行して、2 秒待機し、その後 3 秒実行してから停止しました。
2 つ目のスレッドは、プログラムの実行開始から 2 秒後に開始し、1 秒実行して、3 秒待機し、その後 1 秒実行してから停止しました。
3 つ目のスレッドは、プログラムの実行開始から 3 秒後に開始し、1 秒実行して、2 秒待機し、その後 1 秒実行してから停止しました。
CPU 時間は次のとおりです。
(1+3)+(1+1)+(1+1) = 8 秒
待機時間は次のとおりです。
(2)+(3)+(2) = 7 秒
ここでは CPU 時間、待機時間、経過時間の間に特別な関係はありませんが、次のような場合には、いずれかの時間がそれ以外の時間よりも短くあるいは長くなければならないこともあります。
シングルスレッド・プログラムでは、プログラムにスレッドが 1 つしかなく、その CPU 時間と待機時間の合計が経過時間となるため、CPU 時間と待機時間は経過時間以下でなければなりません。
マルチスレッド・プログラムでは、プログラムのスレッド数とその動作に応じて、経過時間が CPU 時間または待機時間よりも短くなったり長くなったりします。
© 2010 Intel Corporation. 無断での引用、転載を禁じます。