PresentMon is Intel's benchmark tool that provides metrics for GPU usage, CPU usage, frame times, and temperatures. It incorporates a new measurement called 'GPU Busy' to offer users a clearer understanding of system bottlenecks.

Features

Configurable Overlay with Real-time Graphing

Bring your game performance to life through a fully customizable overlay with real-time performance charting that supports multi-line graphs and histograms. Now you can see real-time raw numbers, percentiles, rolling-window averages, and more to understand your gaming experience.

Discover Performance Bottlenecks

Innovative new "GPU Busy" metric shows real time CPU + GPU balance and how the resources in your machine are being utilized, allowing you to better evaluate computing bottlenecks in your games.

Combined GPU Telemetry and Performance Capture

Intel PresentMon combines performance and GPU telemetry data into a single overlay and capture utility, allowing you to better evaluate your system during, or after, your gaming session.

Multi-vendor Support and Open Source

Intel PresentMon works with Intel Arc graphics cards and Intel Core processors but with other hardware vendor options as well. And because PresentMon continues to be an open-source utility, it can be integrated into third party applications.

Broad API Support

Intel PresentMon supports DirectX 12, DirectX 11, DirectX 9, OpenGL, and Vulkan application APIs. Both Windows 11 and Windows 10 are supported.

Powerful Command Line Options for Power Users

For power users, reviewers, or anyone else that wants to take advantage of it, Intel PresentMon supports command line functionality for batch testing or automation.

What's New

New Features

  • Introduced three new FPS overlay indicators to provide a clearer picture of frame delivery behavior, especially in scenarios involving frame generation. FPS-Presents measures how often frames are presented to the GPU, while FPS-Display captures the rate at which frames are actually shown on screen. FPS-App typically matches FPS-Presents except in frame generation scenarios.
    • Added the following GPU telemetry metrics (currently supported by Intel Arc Battlemage GPUs):
    • GPU Effective Frequency
    • GPU Voltage Regulator Temperature
    • GPU Memory Effective Bandwidth
    • GPU Overvoltage Percent
    • GPU Temperature Percent
    • GPU Power Percent
    • GPU Fan Speed Percent
    • GPU Card Power (total board power)
  • Reintroduced support for several timing metrics in the CSV, including MsBetweenPresents, MsBetweenDisplayChange, MsInPresent, MsRenderPresentLatency, and MsUntilDisplayed. MsBetweenSimulationStart and MsPCLatency are also included in the schema but are currently disabled until underlying event support is enabled.
  • Added CLI option to disable overlay alpha blending (reduces overlay impact on target present timing seen in some circumstances)
  • Added support to PresentMon console application for detection of Hybrid Presents
  • Increased default PresentMon circular buffer size to 2048 to be able to handle higher FPS applications. In addition added a command line parameter to be able to manually configure buffer size.
  • Stabilized binary version compatibility of PresentMon API by deploying PresentMonAPI.dll side-by-side with the service and moving to a dynamic loading model
  • Added Loader .dll + static import .lib to facilitate discovery and endpoint resolution of the PresentMon API
  • Added ETL trimmer utility for trimming ETL files to a timestamp range and pruning unnecessary event types (source only, currently no binary distribution provided)

Experimental

  • Added ability to inject executable code into the target process to cause a flash to be drawn in-game whenever the mouse is clicked (intended for use in conjunction with specialized optical measuring instruments)

Security and Lifecycle

  • Re-engineered multi-process architecture to enable PresentMon to be run without Administrator privileges
  • Improved security by ensuring that Chromium UI frontend runs at lowered integrity even when PresentMon is run elevated
  • Upgraded frontend from Vue.js 2 (past end-of-life and unsupported) & Vuex => Vue.js 3 & Pinia