適用範囲:DS-5
ハードウェアパフォーマンスカウンタによって提供される情報量は巨大ですが、パフォーマンスにはあまり影響を与えません。これにより次のような情報解析が行えます:
- 実行された命令
- 予測に失敗した分岐
- メモリシステム内のイベントのリプレイ
返されるデータ容量のため、パフォーマンスカウンタは慎重に選択する必要があります。
ハードウェアパフォーマンスカウンタ使用時の検討事項
パフォーマンスカウンタの設定は初心者ユーザ向けではなく、多くのイベントはアーキテクチャ依存です。またチップの設計にも多く依存することがあります。同様に、一度にモニタできるイベントの数は限定されています。例えば、Cortex-A8プロセッサは40を越える異なったパフォーマンスイベントを持っていますが、設定可能なPerformance Monitor Unit(PMU)カウンタの数は4つのみです。
ARM Streamlineはアプリケーションの最適化のために適したハードウェアパフォーマンスカウンタを設定します。サイクル、命令およびキャッシュの統計はどこで時間がかかったか、どのような効率で実行されたかを示します。多くのイベントソースから選ぶことができますが、その測定基準がどのくらい実用的かを考慮しなければなりません。以下では、どのようにカスタムパフォーマンスカウンタとして使うためにターゲットを設定するかについて記載します。
パフォーマンスカウンタの設定
測定が実行されるたびに、gatorデーモンはXMLファイルを読み、ハードウェアパフォーマンスカウンタの設定を行います。counters.xml はオプショナルです。このファイルを生成したら、gatordと同じディレクトリに置く必要があります。ファイルが存在しない場合、Streamlineデフォルトパフォーマンスカウンタが使われます。複数のPMUが有効であれば、それぞれのPMUは設定することが出来ます。
counters.xml ファイルは以下の属性を含むことができます:
属性 | 記述 |
---|---|
type | カウンタリソースの識別子 |
event | アーキテクチャ固有のイベント番号(10進数) アーキテクチャの仕様書から決定 |
title | Streamlineの表示タイトル 合致するタイトルがチャートにスタックされる |
name | Streamline表示名称 |
color | Streamlineの表示色 |
operation | データに対して行う総和(デフォルト)、最大値またはパーセンテージのいずれかの計算 |
per_cpu | 収集されたデータがcpuごとをベースにするかどうかを定義 |
Example: counters.xml
Streamlineインストレーションでは参考となるcounters.xmlファイルのサンプルを含んでいます:
<ds-5 install directory>/arm/armv5t/counters.xml
概要
ARM Streamlineはアプリケーションの解析を手助けするデフォルトの最適なハードウェアパフォーマンスカウンタです。パフォーマンスカウンタは多くの機能を持っていますが、軽いカウンタであるため、リソースとマッチさせたり混在させたい場合には慎重に選択する必要があります。gatorデーモンはcounters.xmlファイルを読みこみ、要求に応じた動作をするようパフォーマンスカウンタを設定します。