TAU、PAPI紹介

2014年8月8日金曜日

プログラム

t f B! P L
最近、お仕事でよくTAUを使ってる。

思い返すと10年以上前、イリノイにいたころSCに行って、大学の研究室がCD-ROMでPAPI配ってるの貰って有難う使ってみるとかいってたのが、そういうパフォーマンス計測ツールとのファースト・コンタクト。

PAPIはそれなりに世間では利用されるようになったのだけど、個人的には自前でプローブ埋めるの面倒だし……と使わずにいました。でも、去年あたりから、適当なチューニングだと、試行錯誤ばっか増えて、全然効率良くならないし、計測ツールも使ってみるかと使い始めた所。

以下、簡単にTAUとPAPIの説明。
  • PAPIは計測ツールそのもの
  • TAUは計測ツールを使うためのsuiteや環境
例えば、PAPIを使うには、ユーザが最初に計測するHWカウンターを登録してやり、それから計測したい関数の最初と最後にSTART/STOPを埋め込む必要がある。また得た値を自前で集計する必要もある。

一方、TAUを使うには、計測したい範囲にSTART/STOPを埋め込む。後は、実行時に環境変数で何を測るか指定するだけ。結果は勝手にファイルに書きだされる。

自由度は多少低いのだけど、使いやすさだけを考えると、TAUの圧勝という感じ。まあ、TAUは、PAPIや他のライブラリなんやツールなんかを、統合して使うための環境みたいな物なので、当然と言えば当然なんですけどね。

TAUを使うと、埋め込んだSTART/STOP間について、環境変数を弄るだけで、コンパイルしなおしもなしに、以下の値が計測できます。これは便利w
  • 実行時間(積算)
  • 実行時のHWカウンター(積算)
  • START/STOPの実行時刻(個別)
そういうわけで、HWカウンターなど見ずにチューニングしてる方には、TAU&PAPI、お薦めです。

ラベル

AndroidTV (1) chromebook (2) DIY (4) docker (1) git (4) Ingress (4) llvm (3) MacBook (1) MVNO (1) narou (1) PS4 (2) QNAPNAS (9) SIMD (9) SmartBand (8) Ubuntu (9) VAIO (1) Windows (2) wsl (2) wsl2 (1) Xperia (20) トルネ (3) プログラム (26) ルーター (18) 音楽 (6) 家事 (2) 自炊 (2) 電子書籍 (2) 洋食 (4)

フォロワー

QooQ