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

# ConfigurePMCs

> ConfigurePMCs

# ConfigurePMCs

4개의 하드웨어 성능 모니터 카운터(PMC)를 구성하여 타이틀이 타이틀 코드용으로 카운터를 직접 읽을 수 있게 합니다.

## 구문

```cpp theme={null}
HRESULT ConfigurePMCs(  
         unsigned int eventIndex0,  
         unsigned int eventIndex1,  
         unsigned int eventIndex2,  
         unsigned int eventIndex3  
)  
```

### 매개변수

*eventIndex0*   \
형식: unsigned int

계수할 이벤트의 인덱스입니다.

*eventIndex1*   \
형식: unsigned int

계수할 이벤트의 인덱스입니다.

*eventIndex2*   \
형식: unsigned int

계수할 이벤트의 인덱스입니다.

*eventIndex3*   \
형식: unsigned int

계수할 이벤트의 인덱스입니다.

### 반환값

형식: HRESULT

성공 또는 오류 코드입니다.

| 코드                | 설명                      |
| ----------------- | ----------------------- |
| S\_OK             | 성공.                     |
| E\_INVALIDARG     | 하나 이상의 인덱스가 범위를 벗어났습니다. |
| E\_ACCESS\_DENIED | 드라이버에 대한 액세스가 거부되었습니다.  |

## 설명

이벤트를 계수하도록 직접 구성할 수 있는 4개의 하드웨어 카운터가 있습니다. 이벤트는 아래 표에 나열되어 있습니다. 이벤트의 인덱스는 이 메서드에서 이벤트를 지정하는 데와 [GetPMCValue](/reference/tools/pix3/functions/getpmcvalue)를 사용하여 카운트를 검색하는 데 모두 사용됩니다.

| 인덱스 | 이벤트                        | 설명                                                                                                     |
| --- | -------------------------- | ------------------------------------------------------------------------------------------------------ |
| 0   | Reserved                   | 예약됨.                                                                                                   |
| 1   | RetiredSseAvx              | 완료된 SSE/AVX 작업 수.                                                                                      |
| 2   | DCacheAccesses             | 로드 및 저장 참조를 위한 L1 데이터 캐시 액세스 수.                                                                        |
| 3   | DCacheMisses               | 데이터 캐시에서 미스가 발생한 L1 데이터 캐시 참조 수.                                                                       |
| 4   | DCacheRefills              | 캐시할 수 없는 메모리에서 L2 캐시(및/또는 노스브리지)로부터 충족된 L1 데이터 캐시 리필 수.                                                |
| 5   | L1DTLBMissL2DTLBHit        | L1 DTLB에서 미스되고 L2 DTLB에서 히트되는 L1 데이터 캐시 액세스 수.                                                         |
| 6   | DtlbMiss                   | L1 및 L2 DTLB 모두에서 미스되는 L1 데이터 캐시 액세스 수.                                                                |
| 7   | L1DtlbHit                  | L1 DTLB에서 히트되는 L1 데이터 캐시 액세스 수.                                                                        |
| 8   | L1ITLBMissL2ITLBHit        | L1 ITLB에서는 미스되지만 L2 ITLB에서 히트되는 명령 페치 수.                                                               |
| 9   | ItlbMiss                   | 4K ITLB 및 2M ITLB에서 미스되는 명령 페치 수.                                                                      |
| 10  | ItlbInstructionFetchHits   | 4K ITLB 및 2M ITLB에서 히트되는 명령 페치 수.                                                                      |
| 11  | MisalignedAccess           | 정렬되지 않은 L1 데이터 캐시 액세스 수. 정렬되지 않은 액세스는 최소한 추가 캐시 액세스와 읽기 시 추가 대기 시간 사이클을 발생시킵니다.                        |
| 12  | IneffectiveSWPrefetches    | 실제 L1 데이터 캐시 리필을 발생시키지 않는 소프트웨어 프리페치 수.                                                                |
| 13  | CpuClkNotHalted            | CPU가 정지 상태가 아닌 클록 수.                                                                                   |
| 14  | RetiredInstructions        | 완료된 명령 수(실행 완료 및 아키텍처 상태 업데이트). 이 카운트에는 예외 및 인터럽트가 포함됩니다.                                              |
| 15  | BranchInstructions         | 완료된 분기 명령 수. 여기에는 예외 및 인터럽트를 포함한 모든 유형의 아키텍처 제어 흐름 변경이 포함됩니다.                                          |
| 16  | MispredictedBranch         | 대상 또는 방향에서 올바르게 예측되지 않은 모든 유형의 완료된 분기 명령 수. 여기에는 예측이 시도되지 않는 명령(원거리 제어 전송, 예외, 인터럽트)도 포함되며 리싱크는 제외됩니다. |
| 17  | RetiredTakenBranch         | 완료된, 실행된 분기 수. 여기에는 예외 및 인터럽트를 포함한 모든 유형의 아키텍처 제어 흐름 변경이 포함되며 리싱크는 제외됩니다.                              |
| 18  | RetiredFarSyscall          | 완료된 원거리 syscall 수.                                                                                     |
| 19  | RetiredNearReturns         | 완료된 근거리 반환 명령 수.                                                                                       |
| 20  | RetiredReturnsMispredicted | 대상 또는 방향에서 잘못 예측된 근거리 반환 명령이 완료되었습니다.                                                                  |
| 21  | MispredictedTakenBranch    | (방향이 아닌) 대상 주소에서 잘못 예측된 실행된 분기 명령이 완료되었습니다.                                                            |
| 22  | MmxFPInstructions          | 부동 소수점(x87, MMX 또는 SSE) 명령이 완료되었습니다.                                                                   |
| 23  | RetiredFPInstructions      | 완료된 SSE/AVX 작업 수.                                                                                      |
| 24  | RetiredMmxInstructions     | 완료된 MMX 작업 수.                                                                                          |
| 25  | RetiredSseInstructions     | 완료된 SSE 작업 수.                                                                                          |
| 26  | InstructionFetchStalls     | 명령 페치 엔진이 정지된 사이클 수.                                                                                   |
| 27  | DataCachePrefetches        | L1 데이터 캐시 프리페치.                                                                                        |
| 28  | DataCacheReadSize          | L1 데이터 캐시 읽기 수.                                                                                        |
| 29  | DataCacheWriteSize         | L1 데이터 캐시 쓰기 수.                                                                                        |
| 30  | ITLBReloadStalls           | ITLB 다시 로드로 인해 페치 엔진이 정지된 사이클 수.                                                                       |

## 요구 사항

**헤더:** pix3.h

**라이브러리:** pixevt.lib

**지원되는 플랫폼:** XBOX One 계열 콘솔 및 XBOX Series 콘솔

## 함께 보기

[ConfigureL2IPMCs](/reference/tools/pix3/functions/configurel2ipmcs)\
[ConfigureNBPMCs](/reference/tools/pix3/functions/configurenbpmcs)\
[GetPMCValue](/reference/tools/pix3/functions/getpmcvalue)\
[PIX(NDA 항목)](/tools/tools-console/pix/pix)\
[PIX3 on XBOX](/reference/tools/pix3/pix3_members)


## Related topics

- [ConfigureNBPMCs](/ko/reference/tools/pix3/functions/configurenbpmcs.md)
- [ConfigureL2IPMCs](/ko/reference/tools/pix3/functions/configurel2ipmcs.md)
- [GetPMCValue](/ko/reference/tools/pix3/functions/getpmcvalue.md)
- [PIX3](/ko/reference/tools/pix3/pix3_members.md)
- [PC 상위 실패 테스트 케이스](/ko/publishing/certification/pc-top-failing.md)
