A simple python GUI application that records a trace, processes it with presentmon, then adds data from ETL on top for frametime and latency analysis.
Disclaimer: 100% vibecoded with gemini and claude free tiers. I have not read a single line of code and I would not understand it anyway.
- PCL Latency markers: Detailed latency metrics including input sample, simulation, render submit and present.
- Revamped columns, based on pcl markers. Accurate PCL for every frame. Frametimes based on real framestart. More...
- CPU100: CPU saturation metric that shows periods when the CPU was busy accross all cores used by the game.
- ISR/DPC: Shows how long game threads were interrupted by ISRs and DPCs. See
example_isr_dpc.md - more to come...
- Windows 10/11
- Administrator privileges (required for ETL tracing)
- Python 3.8+
-
Windows Performance Toolkit (wpaexporter.exe, xperf.exe)
- Download Windows ADK
- Install "Windows Performance Toolkit" component only
- Default location:
C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit\
-
PresentMon v2.4.1
- Download from PresentMon Releases
- Put
PresentMon-2.4.1-x64.exeinto thebin/folder
See requirements.txt for the full list. Install with:
pip install -r requirements.txtCore dependencies:
- PyQt6 (GUI framework)
- polars & pyarrow (data processing)
- pandas & numpy (data analysis)
- pynput (keyboard monitoring)
- psutil (system information)
- pillow (image processing)
-
Clone the repository
git clone https://github.com/VoeSo/pmplus.git cd pmplus -
Install Python dependencies
pip install -r requirements.txt
-
Download PresentMon
- Download PresentMon v2.4.1
- Put
PresentMon-2.4.1-x64.exeinto thebin/folder
-
Install Windows Performance Toolkit
- Download Windows ADK
- Run the installer and select only "Windows Performance Toolkit"
- Verify installation at
C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit\
# Right-click on Command Prompt/PowerShell and select "Run as Administrator"
python PMplus.pyThis project is provided as-is for educational and analytical purposes. Please respect the licenses of the underlying tools:
- PresentMon - MIT License
- Windows Performance Toolkit - Microsoft Software License
- Sound Effects - ElevenLabs (Free License - Attribution Required)
- Built on PresentMon by Intel
- Uses Windows Performance Toolkit from Microsoft
- Sound effects provided by ElevenLabs