ハードウェアカウンタオーバーフローのプロファイルデータの収集を制御します。ハードウェアカウンタオーバーフローのプロファイル機能をサポートしていないシステム上でこの機能を有効にしようとすると、dbx から警告メッセージが返され、コマンドは無視されます。option には次のいずれかの値を指定できます。
on– ハードウェアカウンタオーバーフローのプロファイルを有効にします。デフォルトでは、通常のオーバーフロー値で cycles カウンタのデータが収集されます。
off– ハードウェアカウンタオーバーフローのプロファイルを無効にします。
list– 使用可能なカウンタの一覧を返します。一覧については、「ハードウェアカウンタのリスト」を参照してください。ハードウェアカウンタオーバーフローのプロファイル機能がシステムでサポートされていない場合は、dbx から警告メッセージが返されます。
counter counter_definition... [, counter_definition ]– カウンタ定義には、プロセッサがハードウェアカウンタの属性をサポートしているかどうかに応じて、次のいずれかの形式を使用できます。
[+] counter_name[/ register_number][,interval ]
[+]counter_name[~ attribute_1=value_1]...[~attribute_n =value_n][/ register_number][,interval ]
ハードウェアカウンタの name を選択し、そのオーバーフロー値を interval に設定します。オプションとして、追加のハードウェアカウンタ名を選択し、それらのオーバーフロー値を指定された間隔に設定します。オーバーフロー値は次のいずれかです。
on または NULL 文字列 – デフォルトのオーバーフロー値。これは、collect を引数なしで入力することによって判別できます。
hi[gh]– 選択したカウンタの高分解能値。これは、デフォルトのオーバーフロー値の約 10 分の 1 の値です。旧バージョンのソフトウェアとの互換を図るため、h の省略形もサポートされています。
lo[w]– 選択したカウンタの低分解能値。これは、デフォルトのオーバーフロー値より約 10 倍長い値です。
interval– 特定のオーバーフロー値。これは正の整数でなければなりませんが、10 進数と 16 進数のどちらの形式でもかまいません。
複数のカウンタを指定する場合、それらのカウンタは異なるレジスタを使用する必要があります。使用するレジスタが同じである場合は警告メッセージが出力され、コマンドは無視されます。
ハードウェアカウンタがメモリーアクセスに関連するイベントをカウントする場合、カウンタ名の前に + 記号を付けて、カウンタのオーバーフローを発生させた命令の実際の PC の検索をオンにすることができます。検索が成功すると、PC と参照された有効アドレスがイベントデータパケットに格納されます。
デフォルトでは、コレクタは、ハードウェアカウンタのオーバーフロープロファイルデータを収集しません。ハードウェアカウンタオーバーフローのプロファイルが有効になっていて profile コマンドが指定されていない場合、時間ベースのプロファイルは無効となります。
「ハードウェアカウンタオーバーフローのプロファイルに関する制限事項」も参照してください。