Linux Perf Mon htop/iostat/bpftrace 2026(リナックスパフォーマンス監視)
Linux Performance Tools (Brendan Gregg)。htop 3.4・btop 1.4・atop・glances 4.3・vmstat・iostat (sysstat)・pidstat・mpstat・sar・top・procstat・bpftrace 0.22・bcc (BPF Compiler Collection)・Tracepoint+kprobe+uprobe・perf (Linux perf)・perf-tools (Brendan Gregg)・FlameGraph・eBPF Map・systemd-cgtop・powertop・iotop・dstat (Maintenance)・nicstat・¥0 OSS、2026年bpftrace+perf主流。
概要
Linux Perf Mon htop/iostat/bpftrace 2026 は、システム全体のパフォーマンスをリアルタイムで可視化し、ボトルネックを特定するためのツール群です。htop はプロセス管理、iostat はディスク I/O、bpftrace は eBPF を利用したカスタムトレースを提供します。2025年に登場した bpftrace 0.22 では、Perf のサブセット機能が統合され、Perf ツールチェーンと並行して使用できるようになりました。2026年現在、bpftrace と Perf が主流となり、FlameGraph と組み合わせてスレッドレベルのプロファイルを高速に生成できる点が特徴です。
主な特徴・仕組み
- htop 3.4:CPU 4.9GHz、L3 12MB キャッシュ、64 コアの Ryzen 9 9950X3D で 90% 以上の CPU 使用率を即座に表示
- iostat (sysstat):ディスク I/O の平均応答時間を 1 ms 以内で測定、Samsung 980 Pro SSD で 5,000 IOPS を記録
- bpftrace 0.22:eBPF マップを 32KB まで拡張し、カーネルトレースを 1 µs 以内で取得
- Perf:CPU 周波数 3.5GHz、バースト 4.9GHz の Intel Core i9-13980HX で 10,000 サイクル/スレッドのハードウェアカウンタを同時取得
- FlameGraph:bpftrace の出力を 200ms で可視化、プロファイルのヒートマップを生成
- systemd-cgtop:cgroup のリソース使用率を 0.5 秒間隔で更新、コンテナ環境で 5% 以内の精度
- powertop:CPU 1.8GHz で 30% 以上の電力節約モードを検出、TDP 450W の RTX 5090 で 20% の電力削減を提示
- dstat:ネットワーク帯域 10Gbps で 0.1 秒ごとに統計を取得、nicstat と組み合わせて 5% 以内の遅延を検出
スペック比較表
| ツール | 主な機能 | 更新頻度 | 主要入力 | 主要出力 |
|---|---|---|---|---|
| htop | プロセス管理 | 1 秒 | /proc | ターミナル |
| iostat | ディスク I/O | 5 秒 | sysfs | CSV |
| bpftrace | eBPF トレース | 1 µs | eBPF | JSON |
| Perf | ハードウェアカウンタ | 1 ms | perf_event | text |
| FlameGraph | プロファイル可視化 | 200 ms | bpftrace | SVG |
具体例・対応製品
- RTX 5090 – 24GB GDDR7、TDP 450W、Perf で 1,200,000 GPU サイクルを 1 秒で計測
- Ryzen 9 9950X3D – 24 コア、48 スレッド、htop で 95% 以上の CPU 使用率を 0.5 秒で表示
- Samsung 980 Pro SSD – 1,500,000 IOPS、iostat で 2 ms 以内の応答時間を測定
- Intel Core i9-13980HX – 64 コア、128 スレッド、Perf で 10,000 サイクル/スレッドを同時取得
- DDR5-6000 – 32GB、bpftrace で 1 µs 以内のメモリアクセスをトレース
自作PCでの選び方・注意点
- CPU とツールの相性:Perf はハードウェアカウンタ数が多い CPU(例:Ryzen 9 9950X3D)で最大限効果を発揮。
- メモリ容量:bpftrace のマップサイズが 32KB まで拡張されているため、64GB DDR5 以上の構成が推奨。
- 電源ユニット:RTX 5090 の TDP 450W を考慮し、550W 以上の電源を選定。
- 冷却:Perf で 10,000 サイクル/スレッドを同時取得すると 80% 以上の熱が発生。液体冷却を検討。
- OS バージョン:2025 年にリリースされたカーネル 6.5 以降で eBPF が最適化されているため、必ずアップデート。
関連用語との違い
- htop vs top:htop はインタラクティブな UI を持ち、CPU 使用率を 0.5 秒ごとに更新。top は 1 秒間隔で更新し、プロセスの詳細は表示しない。
- iostat vs sar:iostat はディスク I/O のみを扱うが、sar は CPU、メモリ、ネットワークまで網羅。
- bpftrace vs perf:bpftrace は eBPF を使った柔軟なトレーススクリプトが可能だが、perf はハードウェアカウンタの詳細な統計を取得。
- FlameGraph vs gprof:FlameGraph は高速に SVG を生成し、スレッドレベルのプロファイルを可視化。gprof は関数単位での統計のみ。
よくある質問(FAQ)
Q1. bpftrace は Windows でも使えますか?
A1. bpftrace は Linux カーネルの eBPF 機能に依存しているため、Windows では直接実行できません。Windows Subsystem for Linux (WSL2) で実行する場合、WSL2 が Linux カーネル 5.10 以上を使用している必要があります。
Q2. Perf のサンプル数を増やすと実行時間が長くなりますか?
A2. はい。Perf はハードウェアカウンタをサンプリングするため、サンプル数を増やすと CPU への負荷が上がり、実行時間が 2 倍以上に伸びることがあります。2025 年の Perf 0.21 ではサンプルレートを 10,000 サイクル/スレッドに設定すると、約 5 秒で 1,000,000 サンプルを収集できます。
Q3. htop のカスタム列を追加するにはどうすればいいですか?
A3. htop の設定ファイル ~/.config/htop/htoprc で Columns セクションを編集し、add キーで新しい列を追加できます。2026 年の htop 3.4 では -P オプションで JSON 形式の列定義を読み込むことも可能です。
まとめ
Linux Perf Mon htop/iostat/bpftrace 2026 は、CPU、メモリ、I/O、ネットワークを総合的に監視できるツール群です。2025 年以降のカーネルとハードウェアの最適化により、bpftrace と Perf の組み合わせで 1 µs 以内のトレースと 10,000 サイクル/スレッドのハードウェアカウンタ取得が可能になりました。自作 PC では、RTX 5090 の TDP、Ryzen 9 9950X3D の多コア構成、DDR5-6000 の高速メモリを活かし、Perf と bpftrace を併用することで、リアルタイムでのボトルネック検出と最適化が実現できます。ぜひ、これらのツールを組み合わせて、最高のパフォーマンスを追求してください。