6 gprofng
およびスレッド・アプリケーションの操作
マルチスレッド・アプリケーションのパフォーマンス・データを収集します。
デフォルトでは、マルチスレッド・アプリケーションのパフォーマンス・データは、すべてのスレッドについて集計されます。個々のスレッドまたはスレッドのセットのデータが必要な場合は、フィルタを使用してその情報を分析できます。
パフォーマンス・データが取得されたすべてのスレッドをリストするには、-thread_list
および-threads
オプションを使用します:
gprofng display text -thread_list -threads experiment-directory-name.er
Exp Sel Total
=== === =====
1 all 3
Objects sorted by metric: Exclusive Total CPU Time
Excl. Total Name
CPU
sec. %
5.775 100.00 <Total>
2.773 48.01 Process 1, Thread 3
2.722 47.13 Process 1, Thread 2
0.280 4.85 Process 1, Thread 1
出力例では、その実験中に3つのスレッドのCPU時間が使用されたことがわかります。スレッド番号は、特定のスレッドまたはスレッドのグループの両方の情報を確認するために使用できます。
特定のスレッドのパフォーマンス・データを確認するには、-thread_select
オプションをスレッド番号とともに使用します:
gprofng display text -limit 5 -thread_select 1 -functions experiment-directory-name.er
Print limit set to 5
Exp Sel Total
=== === =====
1 1 3
Functions sorted by metric: Exclusive Total CPU Time
Excl. Total Incl. Total Name
CPU CPU
sec. % sec. %
0.280 100.00 0.280 100.00 <Total>
0.126 44.84 0.267 95.37 init_data
0.068 24.20 0.104 37.01 erand48_r
0.038 13.52 0.142 50.53 drand48
0.036 12.81 0.036 12.81 __drand48_iterate