6 ポイント 投稿者 GN⁺ 2024-07-04 | まだコメントはありません。 | WhatsAppで共有
  • 0x.toolsは、Linuxでアプリケーション性能を分析するためのオープンソースユーティリティ群
  • 配布の容易さと最小限の依存関係を目標とし、システム問題の解決に伴う摩擦を低減
  • OSのアップグレード、カーネルモジュールのインストール、重い監視フレームワーク、Javaエージェント、またはデータベースの導入は不要
  • 個々のスレッドレベルの活動を測定でき、コード実行、スリープ状態、システムコール、カーネル待機位置などを追跡・サンプリング可能

xcapture-bpf & xtop 2.0.2 ベータ公開

  • xcapture-bpfとxtopはLinuxのtopツールに似ているが、eBPFを使って性能データをさまざまな角度から確認できる
  • システムレベルの概要から個別スレッドの活動、カーネルイベントまでドリルダウン可能
  • eBPFは完全にプログラム可能であり、これを最大限活用していく計画

xcapture-bpf ターミナルハイライトとスタックタイル

  • ターミナルのテキスト検索・ハイライトおよびスクロール機能が、新しいスタックタイル形式とうまく連携
  • スタックタイルには関数名だけでなく、ファイル名やメモリ割り当ての理由など、さまざまな情報を含められる

xcapture-bpf のインストール

  • xcapture-bpfはまだベータ版のため、本番システムでは実行しないこと
  • eBPFを使用し、現時点ではBCCとpython3をフロントエンドとして参照・利用
  • RHEL 8.1またはUbuntu 24.04以降でテスト済み

同梱ツール

  • リアルタイムのインタラクティブツールと低頻度プロファイリングツールを提供
  • 主なツールの説明:
    • psn: 現在の上位スレッド活動をサンプリング
    • xcapture: 低オーバーヘッドのスレッド状態サンプラー
    • xcapture-bpf: eBPFを使った低オーバーヘッドのプログラマブルなスレッド状態サンプラー
    • syscallargs: システムコールと引数の一覧
    • schedlat: 単一プロセスのCPUスケジューリング遅延時間を表示
    • run_xcapture.sh: xcaptureを継続実行するシンプルなデーモンスクリプト
    • run_xcpu.sh: CPU上のスレッドを低頻度で連続スタックサンプリング

使い方と出力例

  • xcaptureを使ってLinuxスレッド活動をサンプリングし、固定幅出力を表示
  • CSVファイルに出力し、コマンドラインで性能分析が可能

インストールと使い方

  • xcaptureschedlatpsnは標準的なLinuxツールのように/procファイルシステムをサンプリング
  • 追加設定なしでLinuxカーネルバージョン2.6以降で動作

FAQ

  • 0x.toolsはGPL v3ライセンスのオープンソース製品
  • 測定オーバーヘッドはサーバーCPU容量の1%未満
  • 本番環境で安全に使用可能
  • PerfやeBPFの代わりに/procサンプリングを使う理由: 既存企業では大規模本番向けにeBPFを使えないため

GN⁺の意見

  • 0x.toolsはLinuxシステム性能分析のための強力なツール群
  • eBPFを使って性能データを多角的に確認できる点が有用
  • 本番環境で安全に使えるよう設計されている
  • 他の性能分析ツールと比べて、低オーバーヘッドと簡単な導入が利点
  • eBPFのような最新技術を活用し、性能分析の正確性と柔軟性を高める

まだコメントはありません。

まだコメントはありません。