PresentMon CSV Header Format Changed in v2.3.1
Description: Since the update to PresentMon version 2.3.1, the CSV output header format has changed significantly, affecting parsing and analysis scripts.
Previous CSV headers (before v2.3.1):
Application,ProcessID,SwapChainAddress,PresentRuntime,SyncInterval,PresentFlags,AllowsTearing,PresentMode,CPUStartTime,FrameTime,CPUBusy,CPUWait,GPULatency,GPUTime,GPUBusy,GPUWait,DisplayLatency,DisplayedTime,AnimationError,AnimationTime,AllInputToPhotonLatency,ClickToPhotonLatency
Current CSV headers (after v2.3.1):
Application,ProcessID,SwapChainAddress,PresentRuntime,SyncInterval,PresentFlags,AllowsTearing,PresentMode,TimeInMs,MsBetweenSimulationStart,MsBetweenPresents,MsBetweenDisplayChange,MsInPresentAPI,MsRenderPresentLatency,MsUntilDisplayed,MsPCLatency,CPUStartTimeInMs,MsBetweenAppStart,MsCPUBusy,MsCPUWait,MsGPULatency,MsGPUTime,MsGPUBusy,MsGPUWait,MsAnimationError,AnimationTime,MsAllInputToPhotonLatency,MsClickToPhotonLatency
Header Mapping Changes:
- CPUStartTime → CPUStartTimeInMs
- FrameTime → TimeInMs
- CPUBusy → MsCPUBusy
- CPUWait → MsCPUWait
- GPULatency → MsGPULatency
- GPUTime → MsGPUTime
- GPUBusy → MsGPUBusy
- GPUWait → MsGPUWait
- DisplayLatency → MsUntilDisplayed
- DisplayedTime → removed or merged into latency fields
- AnimationError → MsAnimationError
- AllInputToPhotonLatency → MsAllInputToPhotonLatency
- ClickToPhotonLatency → MsClickToPhotonLatency
New Columns Introduced:
- MsBetweenSimulationStart
- MsBetweenPresents
- MsBetweenDisplayChange
- MsInPresentAPI
- MsRenderPresentLatency
- MsPCLatency
- MsBetweenAppStart
Impact: This header change introduces new columns and renames several existing ones, potentially breaking existing scripts and analysis workflows.
Missing Documentation: As of writing, this change is not reflected in the official documentation at: https://github.com/GameTechDev/PresentMon/blob/main/README-ConsoleApplication.md. This may lead to confusion for users upgrading from previous versions.
Requested Action: Update any existing scripts to handle the new header format. Clarify documentation to explicitly state differences between versions and provide mapping details for new and renamed columns.