kennss/SiliconScope

Sudoless Apple Silicon system monitor (native SwiftUI GUI) with ANE / Media Engine / memory-bandwidth tracking

解決する課題

SiliconScope は Apple Silicon Mac 向けのシステムモニターであり、アクティビティモニタなどの標準ツールでは確認できない深いハードウェアメトリクスを表示します。Neural Engine (ANE)、Media Engine、メモリ帯域幅のリアルタイムな可視性を提供することで、オンデバイスの AI やメディアワークロードを扱う開発者のニーズに特化して対応します。これらはローカル LLM や AI モデルの主要なボトルネックです。

仕組み

このアプリはネイティブの SwiftUI ダッシュボードおよびメニューバースイートです。公開および非公開の Apple API を組み合わせてハードウェアデータにアクセスし、root (sudo) 権限を必要としません:

  • IOReport Framework: ドメインごとの消費電力 (CPU、GPU、ANE、DRAM)、クラスタの滞在状況、メモリ帯域幅を抽出するために使用します。
  • SMC & HID: 世代別に厳選された SMC FourCC キーと HID センサーセットのマップを使用して、E コア、P コア、GPU、メモリのユニットごとの正確な温度を提供します。
  • Process Inspector: proc_pid_rusage を利用して、プロセスごとの消費電力、IPC、特に Neural Engine のメモリフットプリントを表示します。
  • Fleet Management: 他の Mac や Linux/NVIDIA マシンにリモートエージェントをインストールして、TLS で暗号化された接続経由でメトリクス (リモート Mac の ANE を含む) を中央ダッシュボードにストリーミングできます。

対象者

  • AI 開発者: ローカル LLM や CoreML モデルを実行しており、ワークロードがコンピュートバウンド、帯域幅バウンド、サーマルスロットリングのいずれに制約されているかを把握する必要がある方。
  • パワーユーザー: 詳細で iStat スタイルのメニューバーモニターにより、ハードウェアの深い洞察を求める Mac ユーザー。
  • Headless Mac/Linux 管理者: 複数のマシンを管理しており、GPU や AI アクセラレータの使用率を単一の画面で把握したいユーザー。

ハイライト

  • ANE & Media Engine トラッキング: Apple の AI およびメディアアクセラレータのリアルタイムな電力および帯域幅監視。
  • Process Inspector: sudo 不要のプロセスごとのメトリクス。P/E コアの分割、IPC、Neural Engine のメモリ使用量など。
  • Record & Replay: DVR のような機能で、システムメトリクスを .ssrec ファイルに録画し、後で分析やスクラビングが可能です。
  • AI ワークロード分類器: システムが帯域幅バウンド、コンピュートバウンド、サーマルスロットリングのいずれであるかを自動的に特定します。
  • Fleet サポート: 他の Mac (ANE を含む) や Linux/NVIDIA マシン (VRAM と Ollama モデルを表示) のリモート監視をサポート。
  • メニューバースイート: 主要なすべてのシステムメトリクスに対して、高度にカスタマイズ可能な iStat スタイルのグリフとドロップダウンを提供。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト