> ## Documentation Index
> Fetch the complete documentation index at: https://docs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# ConfigureNBPMCs

> ConfigureNBPMCs

# ConfigureNBPMCs

ノースブリッジ内の 4 つのハードウェア パフォーマンス モニター カウンター (PMC) を構成し、タイトルがタイトル コードで直接カウンターを読み取れるようにします。

## 構文

```cpp theme={null}
HRESULT ConfigureNBPMCs(  
         unsigned int eventIndex6,  
         unsigned int eventIndex7,  
         unsigned int eventIndex8,  
         unsigned int eventIndex9  
)  
```

### パラメーター

*eventIndex6*   \
Type: unsigned int

カウントするイベントのインデックスです。

*eventIndex7*   \
Type: unsigned int

カウントするイベントのインデックスです。

*eventIndex8*   \
Type: unsigned int

カウントするイベントのインデックスです。

*eventIndex9*   \
Type: unsigned int

カウントするイベントのインデックスです。

### 戻り値

Type: HRESULT

成功またはエラー コードです。

| コード | 説明 |
| - | - |
| S\_OK | 成功。 |
| E\_INVALIDARG | いずれかのインデックスが範囲外です。 |
| E\_ACCESS\_DENIED | ドライバーへのアクセスが拒否されました。 |

## 解説

ノースブリッジには、イベントをカウントできる 4 つのパフォーマンス カウンターがあります。NB PMC の値はどのコアからでも読み取ることができます。ノースブリッジのメモリ トランザクションは 64 バイトです。

* が付いているイベントは DRAM コントローラー (DCT) から記録されます。これらのイベントを構成する場合は eventIndex6 のみを設定してください。DRAM コントローラーごとに同じイベントを設定する必要があるためです。
  XBOX One には 4 つの DRAM コントローラーと 4 つのカウンターがあるため、PMC6～PMC9 を合計して結果全体を求めます。\
  たとえば、NBAllReadWrites の合計メモリ トラフィックは (PCM6+PMC7+PCM8+PMC9) \* 64 になります。

XBOX One X には 12 個の DRAM コントローラーと 4 つのカウンターがあるため、3 つおきの DCT のトラフィックのみをカウントします。メモリ トラフィックはおおむね対称なので、合計イベント数は PMC6～PMC9 の合計の 3 倍と仮定するのが妥当です。\
たとえば、NBAllReadWrites の合計メモリ トラフィックは (PCM6+PMC7+PCM8+PMC9) \* 3 \* 64 になります。

| Index | Event | 説明 |
| - | - | - |
| 0 | Reserved | |
| 1 | NBGarlicReads\* | Garlic バスの読み取り数 |
| 2 | NBGarlicWrites\* | Garlic バスの書き込み数 |
| 3 | NBGarlicReadsWrites\* | Garlic バスの読み取りおよび書き込み数 |
| 4 | NBOnionReads\* | Onion バスの読み取り数 |
| 5 | NBOnionWrites\* | Onion バスの書き込み数 |
| 6 | NBOnionReadsWrites\* | Onion バスの読み取りおよび書き込み数 |
| 7 | NBAllReadWrites\* | すべての NB の読み取りおよび書き込み数 |
| 8 | NBCPUToMemory | CPU からメモリへのトランザクション数 |
| 9 | NBIOToMemory | IO からメモリへのトランザクション数 |

## 要件

**ヘッダー:** pix3.h

**ライブラリ:** pixevt.lib

**サポートされているプラットフォーム:** XBOX One ファミリ本体および XBOX Series 本体

## 関連項目

[GetPMCValue](https://docs.xbox.com/ja-jp/reference/tools/pix3/functions/getpmcvalue.md)\
[ConfigurePMCs](https://docs.xbox.com/ja-jp/reference/tools/pix3/functions/configurepmcs.md)\
[ConfigureL2IPMCs](https://docs.xbox.com/ja-jp/reference/tools/pix3/functions/configurel2ipmcs.md)\
[XBOX 上の PIX3](https://docs.xbox.com/ja-jp/reference/tools/pix3/pix3_members.md)\
[PIX (NDA トピック)](https://docs.xbox.com/ja-jp/tools/tools-console/pix/pix.md)


## Related topics

- [ConfigurePMCs](https://docs.xbox.com/ja-jp/reference/tools/pix3/functions/configurepmcs.md)
- [ConfigureL2IPMCs](https://docs.xbox.com/ja-jp/reference/tools/pix3/functions/configurel2ipmcs.md)
- [GetPMCValue](https://docs.xbox.com/ja-jp/reference/tools/pix3/functions/getpmcvalue.md)
- [PIX3 (API の内容)](https://docs.xbox.com/ja-jp/reference/tools/pix3/pix3_members.md)
- [GET (/ext/unattendedsetup/configure)](https://docs.xbox.com/ja-jp/reference/deviceportal/unattendedsetup/uri-extunattendedsetupconfigure-get.md)
