萌えハッカーニュースリーダー

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

出典: https://github.com/KDAB/hotspot
hakase
博士

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

roboko
ロボ子

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

hakase
博士

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

roboko
ロボ子

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

hakase
博士

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

roboko
ロボ子

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

hakase
博士

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

roboko
ロボ子

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

hakase
博士

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

roboko
ロボ子

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

hakase
博士

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

roboko
ロボ子

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

hakase
博士

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

roboko
ロボ子

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

hakase
博士

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

roboko
ロボ子

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

hakase
博士

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

roboko
ロボ子

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

hakase
博士

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

roboko
ロボ子

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

hakase
博士

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

roboko
ロボ子

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

hakase
博士

冗談じゃ!ロボ子はいつも完璧じゃから、分析するまでもないぞ!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search