web-dev-qa-db-ja.com

OS X Mountain Lionのパフォーマンスカウンターを読む方法はありますか?

カスタムパフォーマンスカウンターを構成できるAppleのプロファイラーであるSharkは、32ビットカーネルを実行できないため、OSX MountainLionではサポートされなくなりました。 AppleのSharkの代替品であるInstruments.appは、L1キャッシュのヒット/ミス**などのパフォーマンスカウンターの読み取りをサポートしていないようです。 OS Xでパフォーマンスカウンターを実際にセットアップして読み取る方法はありますか?アプリケーションがない場合でも、これを行うためのユーザーランドAPIはありますか?

** Instruments.appにはパフォーマンスカウンター用のインターフェイスがあるようですが、私のRetina MacBook Proでは、PMイベントウィンドウにイベントが表示されず、「デバイス:不明」と表示されます。楽器の他の選択肢?

27
user1775117

はいありますが、見つけるのが難しく、使いにくいです(ver.4.5)。

  • 機器を起動します。
  • あなたはウィザードによって迎えられます
  • OSX用の「空白」テンプレートを選択します
  • cmd + Lを押して、ライブラリを表示します
  • インストゥルメントドキュメントに「Counters」インストゥルメントを追加します
  • cmd + shf + Pを押します-PMイベントフローティングウィンドウが表示されます。
  • 「実行された除算演算」を評価してみましょう-「実行された除算演算」をPMイベントウィンドウの検索フィールドに追加します。
  • 次に、「実行された分割操作」の「状態」を「表示」に設定します。
  • ここでメインドキュメントウィンドウに戻り、cmd + Iを押して、「Counters」機器の情報ポップオーバーを表示します。
  • +ボタンを押します
  • 新しいカウンターのイベントを「DivideOperationsexecute」に設定します
  • サンプリングを開始します...
  • サンプリングを終了します。

結果はInstrumentsのテーブル列に表示されます。もちろん、記録できるイベントはたくさんあります。したがって、関心のあるL1キャッシュイベントを見つけて、除算の代わりに追加します。

システムのフリーズにも備えてください(これを書いているときに発生しました)

37
justin