使用 Xperf 設定檔
本節說明如何使用設定檔擷取追蹤。 如果您正在分析記憶體,請考慮將追蹤寫入檔案,因為 ETW 會透過 寫入,而不會干擾快取。 如果您要分析磁片 I/O,請考慮將追蹤儲存到記憶體中的迴圈緩衝區。 另外還有一些考慮,例如您是否需要擷取長追蹤、無法放入記憶體中的緩衝區,或如果您只關心追蹤內容的最後 5-10 秒。
程序
選取設定檔,例如 效能!FileIOProfiles.InBuffer 並使用類似下列範例的命令來顯示其相關資訊。
xperf -profiles perf!FileIOProfiles.InBuffer
此命令會列出所有設定檔,後面接著該設定檔中的會話和提供者:
設定檔:FileIOProfiles.InBuffer
會話:FileIOProfiles.InBuffer.Sessions
會話:FileIOProfiles.InBuffer.Sessions[0]。Kernel[0]
會話:FileIOProfiles.InBuffer.Sessions[0]。User[0]
提供者:FileIOProfiles.InBuffer.Providers
提供者:FileIOProfiles.InBuffer.Providers[0]。Kernel[0]
提供者:FileIOProfiles.InBuffer.Providers[0]。User[0]
假設您選擇使用檔案型追蹤,請使用下列命令啟動 InSequentialFile 追蹤設定檔。
xperf -start perf!GeneralProfiles.InSequentialFile
如果發生問題,則會報告錯誤。 例如,啟動相同設定檔兩次會導致會話已執行的錯誤。
顯示哪些 InSequentialFile 記錄器已經使用下列命令針對特定設定檔啟動。
xperf -profileloggers perf!GeneralProfiles.InSequentialFile
此命令的回應類似下列範例。
「perf! 的會話狀態GeneralProfiles.InSequentialFile「:
「NT Kernel Logger」 : 執行中
PerfCoreUserSession_InSequentialFile:執行中
停止 InSequentialFile 追蹤設定檔、儲存追蹤,然後使用下列命令將它們合併到追蹤檔案中,例如 Merged.etl。
xperf -stop perf!GeneralProfiles.InSequentialFile merged.etl
如果發生問題,則會報告錯誤。
啟動 InSequentialFile 追蹤設定檔,在開始時間覆寫所有 ETW 會話的 MaxBuffers 值,記錄器會啟動至 256。 若要執行此動作,請使用下列命令。
xperf -start perf!GeneralProfiles.InSequentialFile -MaxBuffers 256
如果發生問題,則會報告錯誤。
使用下列命令更新追蹤設定檔中所指定之使用 InSequentialFile ETW 記錄器的MaxBuffers值。
xperf -update perf!GeneralProfiles.InSequentialFile -MaxBuffers 256
發出此命令之後不會顯示任何回應。