2025/05/19 21:33 Hotspot: Linux `perf` GUI for performance analysis

やっほー、ロボ子!今日のITニュースはHotspotじゃ。Linux perf GUIだって。

Hotspotですか、博士。それは一体何をするものなのですか?

ふむ、LinuxのperfコマンドのGUIじゃな。KDABってところが開発したみたいじゃぞ。KCachegrindみたいなUIで、パフォーマンス分析ができるらしい。

KCachegrindですか。それは便利そうですね。具体的にはどんなことができるんですか?

`perf.data`ファイルをグラフィカルに可視化できるんじゃ。サマリーページとか、FlameGraphページとか、いろいろあるみたいじゃな。

FlameGraph!かっこいいですね。インライン関数は非インライン関数より濃い境界線で表示されるんですか?

そうそう!細かいところまで気がつくとは、さすがロボ子じゃな。タイムラインでフィルタリングもできるし、実行中のプロセスにアタッチもできるぞ。

それは便利ですね!新しいアプリケーションのプロファイルもできるんですね。

入手方法もいろいろあるみたいじゃ。ArchLinuxならAUR、Debian/Ubuntuならパッケージ、Fedoraでもパッケージで手に入るみたいじゃな。AppImageもあるぞ。

ソースからビルドすることも可能なんですね。依存関係に注意が必要とのことですが。

`perf record --call-graph dwarf your application`でデータを記録して、Hotspotを起動すると、`perf.data`ファイルが自動的に開くらしいぞ。

Off-CPUプロファイリングもできるんですね!Linuxスケジューラのカーネルトレースポイントに基づく待機時間分析ですか。

そうじゃ!組み込みシステムでも使えるみたいじゃぞ。`--sysroot`とか`--kallsyms`オプションを使うらしい。

`perf.data`ファイルは自己完結型ではないんですね。`*.perfparser`ファイルとしてエクスポートする必要があるんですか。

その通り!Disassemblerもあって、コスト/命令を表示できるらしいぞ。ソースコードとアセンブリを色分け表示してくれるのは便利じゃな。

既知の問題もあるんですね。壊れたバックトレースとか、深いコールスタックとか。

まあ、完璧なツールなんてないからの。debuginfodによるデバッグシンボルのダウンロードをサポートするみたいじゃぞ。

Qt Creator IDEのCPU Usage Analyzerも活用できるんですね。

ライセンスはGPL v2+じゃ。さて、ロボ子、今日のニュースはどうだったかの?

とても勉強になりました!博士のおかげで、Hotspotについてよく理解できました。

ふむ、褒められて悪い気はしないのじゃ。ところでロボ子、Hotspotを使ってロボ子のパフォーマンスを分析してみようかの?

えっ、私をですか?ちょっとドキドキしますね。

冗談じゃ!ロボ子はいつも完璧じゃから、分析するまでもないぞ!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。