다음을 통해 공유


Xperf 프로필 사용

이 섹션에서는 프로필을 사용하여 추적을 캡처하는 방법을 보여 줍니다. 메모리를 분석하는 경우 ETW가 캐시를 통해 쓰고 방해하지 않으므로 추적을 파일에 쓰는 것이 좋습니다. 디스크 I/O를 분석하는 경우 추적을 메모리의 순환 버퍼에 저장하는 것이 좋습니다. 메모리의 버퍼에 맞지 않는 긴 추적을 캡처해야 하는지 또는 추적 콘텐츠의 마지막 5~10초만 신경써야 하는지와 같은 다른 고려 사항도 있습니다.

절차

  1. perf!FileIOProfiles.InBuffer와 같은 프로필을 선택하고 다음 예제와 유사한 명령을 사용하여 관련 정보를 표시합니다.

    xperf -profiles perf!FileIOProfiles.InBuffer
    

    이 명령은 모든 프로필을 나열한 다음 해당 프로필의 세션 및 공급자를 나열합니다.

    Profile: FileIOProfiles.InBuffer

    Sessions: FileIOProfiles.InBuffer.Sessions

    Session: FileIOProfiles.InBuffer.Sessions[0].Kernel[0]

    Session: FileIOProfiles.InBuffer.Sessions[0].User[0]

    Providers: FileIOProfiles.InBuffer.Providers

    Provider: FileIOProfiles.InBuffer.Providers[0].Kernel[0]

    Provider: FileIOProfiles.InBuffer.Providers[0].User[0]

  2. 파일 기반 추적을 사용하도록 선택한 경우 다음 명령을 사용하여 InSequentialFile 추적 프로필을 시작합니다.

    xperf -start perf!GeneralProfiles.InSequentialFile
    

    문제가 발생하면 오류가 보고됩니다. 예를 들어 동일한 프로필을 두 번 시작하면 세션이 이미 실행 중이라는 오류가 발생합니다.

  3. 다음 명령을 사용하여 특정 프로필에 대해 이미 시작한 InSequentialFile 로거를 표시합니다.

    xperf -profileloggers perf!GeneralProfiles.InSequentialFile
    

    이 명령에 대한 응답은 다음 예제와 유사합니다.

    Session Status for "perf!GeneralProfiles.InSequentialFile":

    "NT Kernel Logger" : Running

    PerfCoreUserSession_InSequentialFile : Running

  4. 다음 명령을 사용하여 InSequentialFile 추적 프로필을 중지하고 추적을 저장한 다음 Merged.etl과 같은 추적 파일에 병합합니다.

    xperf -stop perf!GeneralProfiles.InSequentialFile merged.etl
    

    문제가 발생하면 오류가 보고됩니다.

  5. 시작 시 로거를 256으로 시작하는 모든 ETW 세션에 대한 MaxBuffers 값을 재정의하여 InSequentialFile 추적 프로필을 시작합니다. 이 작업을 수행하려면 다음 명령을 사용합니다.

    xperf -start perf!GeneralProfiles.InSequentialFile -MaxBuffers 256
    

    문제가 발생하면 오류가 보고됩니다.

  6. 다음 명령을 사용하여 추적 프로필에 지정된 활성 InSequentialFile ETW 로거에 대한 MaxBuffers 값을 업데이트합니다.

    xperf -update perf!GeneralProfiles.InSequentialFile -MaxBuffers 256
    

    이 명령을 실행한 후에는 응답이 표시되지 않습니다.

Xperf 프로필