<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:media="http://search.yahoo.com/mrss/" xml:lang="en-US">
  <id>tag:github.com,2008:https://github.com/GameTechDev/PresentMon/releases</id>
  <link type="text/html" rel="alternate" href="https://github.com/GameTechDev/PresentMon/releases"/>
  <link type="application/atom+xml" rel="self" href="https://github.com/GameTechDev/PresentMon/releases.atom"/>
  <title>Release notes from PresentMon</title>
  <updated>2026-08-28T18:10:17Z</updated>
  <entry>
    <id>tag:github.com,2008:Repository/53522468/v2.6.0</id>
    <updated>2026-09-21T17:30:36Z</updated>
    <link rel="alternate" type="text/html" href="https://github.com/GameTechDev/PresentMon/releases/tag/v2.6.0"/>
    <title>v2.6.0</title>
    <content type="html">&lt;h1&gt;Release Notes&lt;/h1&gt;
&lt;h2&gt;Major features&lt;/h2&gt;
&lt;h3&gt;Metrics and capture&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;PSO compilation metrics&lt;/strong&gt;: Track D3D12 pipeline state object compilation via ETW (count, duration, and busy percentage), attributed into frame/CSV capture.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;OS DDI flip events&lt;/strong&gt;: Track newer OS DDI events for per-flip timestamps and completed/dropped flip reporting.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;CSV display attribution&lt;/strong&gt;: CSV output includes &lt;strong&gt;source ID&lt;/strong&gt; and &lt;strong&gt;layer ID&lt;/strong&gt; for flips so multi-plane and multi-display scenarios are easier to analyze.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Display metadata&lt;/strong&gt;: Additional display metadata is surfaced in capture/output paths.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Telemetry architecture&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Fine-grained telemetry providers&lt;/strong&gt;: Per-metric provider granularity so only required endpoints are polled; supports combining providers and plug-in-style extension.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Native telemetry format&lt;/strong&gt;: ADL, NVAPI/NVML, IGCL, and WMI paths emit the dynamic caps/polling model directly; legacy telemetry shims removed.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;CPU temperature (UCI socwatch)&lt;/strong&gt;: Optional UCI socwatch integration in the service for CPU temperature where MSR-style access is restricted; builds and runs when UCI is not present.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ADL memory utilization&lt;/strong&gt;: AMD dedicated VRAM usage reporting improved and validated against Windows-reported values.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Intel PresentMon (IPM) UI&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Per-metric multi-device selection&lt;/strong&gt;: Telemetry from multiple adapters can be shown at once; overlay presets can mix devices per metric.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Game Experience preset&lt;/strong&gt;: Overlay preset highlighting metrics that correlate with perceived motion and animation quality.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Metric availability feedback&lt;/strong&gt;: Unavailable telemetry metrics stay visible in pickers and overlay loadouts (dimmed/marked) instead of disappearing silently. Hovering over unavailable metrics shows reason why not available. This information can also be dumped to CSV via the &lt;code&gt;presentmon-cli dump-caps&lt;/code&gt; subcommand.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Array metrics&lt;/strong&gt;: array metrics (multiple fans on 1 GPU etc.) now surface as a single metric with separate index dropdown, instead of multiple independent metrics.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Performance and reliability&lt;/h2&gt;
&lt;h3&gt;Service efficiency&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Lower scheduling overhead&lt;/strong&gt;: ETW flush and related loops use coarser &lt;code&gt;Sleep&lt;/code&gt;-based waiting instead of high-precision timers where jitter is acceptable, cutting CPU use under load by 78% (including on mobile-class systems).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Idle log flushing&lt;/strong&gt;: Diagnostic log flushing is suppressed when the service is not actively tracking or polling telemetry, reducing idle CPU from 0.003% to 0.000%.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Targeted telemetry polling&lt;/strong&gt;: Continued refinement so providers poll only metrics clients actually consume.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Stability and targeting&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Autotargeting&lt;/strong&gt;: Fixed failures when GPU top polling errors aborted the loop early, and a race when the target app starts as a console process before its 3D window appears.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Service restart&lt;/strong&gt;: Fixed service failing to restart while a client session still holds shared-memory objects.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Concurrent launches&lt;/strong&gt;: Second IPM instance is blocked cleanly instead of opening a broken empty window.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Loader / internal API compatibility&lt;/strong&gt;: Private API signature changes no longer break the loader; missing or misaligned internal endpoints are non-fatal.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;API and integration&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;NVIDIA custom flip manifest&lt;/strong&gt;: NVIDIA custom flip ETW manifest is deployed with the service so decoding works on clean dev machines without a global manifest install.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Integrated GPU ordering&lt;/strong&gt;: Integrated Intel/AMD GPUs are detected reliably and sorted below discrete GPUs in device lists.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Availability Feedback&lt;/strong&gt;: introspection now surfaces more detailed reasons why a metric is not available (not available on this device vs. not present at all in the source API vs. PresentMon doesn&#39;t support it in this build).&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;UI and usability&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Version in UI&lt;/strong&gt;: Installed PresentMon version (or build identity for custom/nightly builds) is shown in the capture application UI.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Removals&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Flash Injector removed&lt;/strong&gt;: Experimental Flash Injector DLL/EXE, client hooks, build scripting, and UI have been removed to simplify the solution and builds.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Dependencies and infrastructure&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;CEF version locking&lt;/strong&gt;: Checked-in lock file plus &lt;code&gt;upgrade-cef&lt;/code&gt; / &lt;code&gt;pull-cef&lt;/code&gt; scripts; build and MSI validate CEF version and binary hashes.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;UCI SDK&lt;/strong&gt;: UCI payload externalized with updated packaging/installer deployment (UCI 0.8 line).&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Front-end tooling&lt;/strong&gt;: Vite/Vue dev dependency updates in the web UI project.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Bug fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;ADL/NVML struct and provider fixes affecting telemetry correctness.&lt;/li&gt;
&lt;li&gt;Introspection readiness wait when opening a client session.&lt;/li&gt;
&lt;li&gt;Installer library load in IDE scenarios; AppData apply method fixes.&lt;/li&gt;
&lt;li&gt;Coverity-driven fixes and CFG hardening for the Win32 console application.&lt;/li&gt;
&lt;li&gt;IGCL version check.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Developer and test infrastructure (not end-user facing)&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Broad test suite repair: session API upgrades, ETL aux data, OPM/service parity, deterministic dynamic-poll playback, reduced brittleness in timer and paced-polled tests.&lt;/li&gt;
&lt;li&gt;Parameterized IPM ULT framework to simplify adding ETL playback tests.&lt;/li&gt;
&lt;/ul&gt;</content>
    <author>
      <name>markgalvan-intel</name>
    </author>
    <media:thumbnail height="30" width="30" url="https://avatars.githubusercontent.com/u/79164336?s=60&amp;v=4"/>
  </entry>
  <entry>
    <id>tag:github.com,2008:Repository/53522468/v2.5.1</id>
    <updated>2026-06-30T00:04:40Z</updated>
    <link rel="alternate" type="text/html" href="https://github.com/GameTechDev/PresentMon/releases/tag/v2.5.1"/>
    <title>v2.5.1</title>
    <content type="html">&lt;h2&gt;Bug Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Updated the PresentMon service communication layer to tighten boundaries between the service and clients&lt;/li&gt;
&lt;li&gt;Fixed percentile ordering for fps&lt;/li&gt;
&lt;li&gt;Fixed backwards compatibility regression of PresentMon API&lt;/li&gt;
&lt;li&gt;Added missing CEF files to installer&lt;/li&gt;
&lt;/ul&gt;</content>
    <author>
      <name>markgalvan-intel</name>
    </author>
    <media:thumbnail height="30" width="30" url="https://avatars.githubusercontent.com/u/79164336?s=60&amp;v=4"/>
  </entry>
  <entry>
    <id>tag:github.com,2008:Repository/53522468/v2.5.0</id>
    <updated>2026-07-31T19:19:11Z</updated>
    <link rel="alternate" type="text/html" href="https://github.com/GameTechDev/PresentMon/releases/tag/v2.5.0"/>
    <title>v2.5.0</title>
    <content type="html">&lt;h1&gt;Release Notes&lt;/h1&gt;
&lt;h2&gt;&lt;g-emoji class=&quot;g-emoji&quot; alias=&quot;warning&quot;&gt;⚠️&lt;/g-emoji&gt; DISTRIBUTION NOTE &lt;g-emoji class=&quot;g-emoji&quot; alias=&quot;warning&quot;&gt;⚠️&lt;/g-emoji&gt;&lt;/h2&gt;
&lt;p&gt;The download for this release (initially released April 2026) has been removed because the shared service component had caused a compatibility conflict with one of our downstream customers. Please refer to our &lt;a href=&quot;https://github.com/GameTechDev/PresentMon/releases/tag/v2.5.1&quot;&gt;v2.5.1&lt;/a&gt; release for a binary distribution containing the below improvements.&lt;/p&gt;
&lt;h2&gt;🚀 Major Features&lt;/h2&gt;
&lt;h3&gt;Middleware and IPC Rewrite&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Unified Metrics Calculator&lt;/strong&gt;: Consolidated frame metric calculation system so that dynamic queries, frame queries, and the stand-alone console application all share the same single point of implementation for calculation logic&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;New Query Framework&lt;/strong&gt;: Complete rewrite of Middleware query registration and polling
&lt;ul&gt;
&lt;li&gt;Query registration is now strictly validating queries and outputting detailed info to the diagnostic layer&lt;/li&gt;
&lt;li&gt;Dynamic query stats calculations reimplemented, solving several calculation bugs&lt;/li&gt;
&lt;li&gt;Service now has visibility on the metrics consumed by each client and enables telemetry accordingly&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;New IPC&lt;/strong&gt;: Complete rewrite of IPC that decouples telemetry from frame data and improves transport consistency&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Multi-Device Support&lt;/strong&gt;: Support for querying metrics across multiple GPU devices and system components&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Independent Telemetry&lt;/strong&gt;: It is now possible to gather telemetry data without targeting a presenter, and telemetry data rate is no longer tied to frame rate&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Enhanced Metrics&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Improved Animation Error Tracking&lt;/strong&gt;: Better source tracking and error handling for animation-related metrics&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;ETW Session Management&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Provider Lifecycle Improvements&lt;/strong&gt;: Better tracking and management of ETW provider enable/disable operations with proper data quiescing&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Session Coordination&lt;/strong&gt;: Separated ETW session startup from provider enabling for more reliable operation and reduced race conditions&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Anticheat Mitigation&lt;/strong&gt;: Above changes enable PresentMon to gather data from certain titles that otherwise block ETW trace gathering&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;🔧 Performance &amp;amp; Reliability Improvements&lt;/h2&gt;
&lt;h3&gt;Performance&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Service now only polls telemetry for a device only when a client is actively consuming metrics for that device&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;Logging &amp;amp; Diagnostics&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Enhanced Logging System&lt;/strong&gt;: Significant performance improvements with async logging, throttling, and diagnostic options&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Verbose Module Support&lt;/strong&gt;: Better CLI helpers and diagnostic capabilities for troubleshooting&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Crash Recovery&lt;/strong&gt;: Added log flush on crash and improved error reporting&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ETW and Frame Latency&lt;/strong&gt;: Added detailed debug logging to track ETW event delivery latency and service frame processing latency&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;🛠️ API &amp;amp; Integration Updates&lt;/h2&gt;
&lt;h3&gt;New API Features&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Metrics can be tracked for multiple adapters within the same query&lt;/li&gt;
&lt;li&gt;Dynamic queries can be polled without a target process (set PID to 0)
&lt;ul&gt;
&lt;li&gt;Only queries that contain no frame metrics can be used this way&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;API Behavior Changes&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Query registration validation is much more strict than previously&lt;/li&gt;
&lt;li&gt;Most API errors now have detailed diagnostics output to the diagnostics channel (see PresentMonDiagnostics.h)&lt;/li&gt;
&lt;li&gt;Metrics related to the CPU (frequency, utilization, name) now are associated with a new System device (ID=65536) instead of the Universal device (ID=0)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;🐛 Bug Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Fixed shader path resolution issues&lt;/li&gt;
&lt;li&gt;Resolved race conditions in service backpressure handling&lt;/li&gt;
&lt;li&gt;Corrected frame metric calculations for CPU busy/wait times&lt;/li&gt;
&lt;li&gt;Fixed frame metric calculation bug when combining percentile and raw stats for the same metric&lt;/li&gt;
&lt;li&gt;Fixed percentile calculation algorithm (e.g. 99% was effectively reporting MAX instead)&lt;/li&gt;
&lt;li&gt;Fixed Intel adapter LUID detection and memory reporting&lt;/li&gt;
&lt;li&gt;Improved ETW session management and provider lifecycle&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;📦 Dependencies &amp;amp; Infrastructure&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Scriban&lt;/strong&gt;: Updated to v6.6&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;CSVHelper&lt;/strong&gt;: Updated to latest version&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;IGCL&lt;/strong&gt;: Updated Intel Graphics Control Library&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Installation&lt;/strong&gt;: Enhanced cleanup of AppData folders during install/uninstall&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;p&gt;This release represents a significant architectural improvement with the introduction of the middleware and IPC layers while maintaining backward compatibility and improving overall system reliability.&lt;/p&gt;</content>
    <author>
      <name>planetchili</name>
    </author>
    <media:thumbnail height="30" width="30" url="https://avatars.githubusercontent.com/u/7800662?s=60&amp;v=4"/>
  </entry>
  <entry>
    <id>tag:github.com,2008:Repository/53522468/v2.4.1</id>
    <updated>2026-01-16T05:55:55Z</updated>
    <link rel="alternate" type="text/html" href="https://github.com/GameTechDev/PresentMon/releases/tag/v2.4.1"/>
    <title>v2.4.1</title>
    <content type="html">&lt;h2&gt;Bug Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Fix misplacement of ApplyFlipDelay by &lt;a class=&quot;user-mention notranslate&quot; data-hovercard-type=&quot;user&quot; data-hovercard-url=&quot;/users/HugoNVDA/hovercard&quot; data-octo-click=&quot;hovercard-link-click&quot; data-octo-dimensions=&quot;link_type:self&quot; href=&quot;https://github.com/HugoNVDA&quot;&gt;@HugoNVDA&lt;/a&gt; in &lt;a class=&quot;issue-link js-issue-link&quot; data-error-text=&quot;Failed to load title&quot; data-id=&quot;3692300714&quot; data-permission-text=&quot;Title is private&quot; data-url=&quot;https://github.com/GameTechDev/PresentMon/issues/555&quot; data-hovercard-type=&quot;pull_request&quot; data-hovercard-url=&quot;/GameTechDev/PresentMon/pull/555/hovercard&quot; href=&quot;https://github.com/GameTechDev/PresentMon/pull/555&quot;&gt;#555&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;PresentMon Improvements: Memory Leak Fixes, ETW Monitoring &amp;amp; Build Setup by &lt;a class=&quot;user-mention notranslate&quot; data-hovercard-type=&quot;user&quot; data-hovercard-url=&quot;/users/DevTechProfile/hovercard&quot; data-octo-click=&quot;hovercard-link-click&quot; data-octo-dimensions=&quot;link_type:self&quot; href=&quot;https://github.com/DevTechProfile&quot;&gt;@DevTechProfile&lt;/a&gt; in &lt;a class=&quot;issue-link js-issue-link&quot; data-error-text=&quot;Failed to load title&quot; data-id=&quot;3773183432&quot; data-permission-text=&quot;Title is private&quot; data-url=&quot;https://github.com/GameTechDev/PresentMon/issues/560&quot; data-hovercard-type=&quot;pull_request&quot; data-hovercard-url=&quot;/GameTechDev/PresentMon/pull/560/hovercard&quot; href=&quot;https://github.com/GameTechDev/PresentMon/pull/560&quot;&gt;#560&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Update TargetBlockList with additional executables by &lt;a class=&quot;user-mention notranslate&quot; data-hovercard-type=&quot;user&quot; data-hovercard-url=&quot;/users/Shinigami92/hovercard&quot; data-octo-click=&quot;hovercard-link-click&quot; data-octo-dimensions=&quot;link_type:self&quot; href=&quot;https://github.com/Shinigami92&quot;&gt;@Shinigami92&lt;/a&gt; in &lt;a class=&quot;issue-link js-issue-link&quot; data-error-text=&quot;Failed to load title&quot; data-id=&quot;3754036503&quot; data-permission-text=&quot;Title is private&quot; data-url=&quot;https://github.com/GameTechDev/PresentMon/issues/557&quot; data-hovercard-type=&quot;pull_request&quot; data-hovercard-url=&quot;/GameTechDev/PresentMon/pull/557/hovercard&quot; href=&quot;https://github.com/GameTechDev/PresentMon/pull/557&quot;&gt;#557&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fixed RPC blocking on cleanup when service has dropped, causing clients to hang on shutdown &lt;a class=&quot;user-mention notranslate&quot; data-hovercard-type=&quot;user&quot; data-hovercard-url=&quot;/users/planetchili/hovercard&quot; data-octo-click=&quot;hovercard-link-click&quot; data-octo-dimensions=&quot;link_type:self&quot; href=&quot;https://github.com/planetchili&quot;&gt;@planetchili&lt;/a&gt; in &lt;a class=&quot;issue-link js-issue-link&quot; data-error-text=&quot;Failed to load title&quot; data-id=&quot;3803297943&quot; data-permission-text=&quot;Title is private&quot; data-url=&quot;https://github.com/GameTechDev/PresentMon/issues/565&quot; data-hovercard-type=&quot;pull_request&quot; data-hovercard-url=&quot;/GameTechDev/PresentMon/pull/565/hovercard&quot; href=&quot;https://github.com/GameTechDev/PresentMon/pull/565&quot;&gt;#565&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fixed bug when iterating over blobs in API wrapper &lt;a class=&quot;user-mention notranslate&quot; data-hovercard-type=&quot;user&quot; data-hovercard-url=&quot;/users/planetchili/hovercard&quot; data-octo-click=&quot;hovercard-link-click&quot; data-octo-dimensions=&quot;link_type:self&quot; href=&quot;https://github.com/planetchili&quot;&gt;@planetchili&lt;/a&gt; &lt;a class=&quot;issue-link js-issue-link&quot; data-error-text=&quot;Failed to load title&quot; data-id=&quot;3635684650&quot; data-permission-text=&quot;Title is private&quot; data-url=&quot;https://github.com/GameTechDev/PresentMon/issues/549&quot; data-hovercard-type=&quot;issue&quot; data-hovercard-url=&quot;/GameTechDev/PresentMon/issues/549/hovercard&quot; href=&quot;https://github.com/GameTechDev/PresentMon/issues/549&quot;&gt;#549&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;PresentMon Improvement: App Provider Memory Leak Fixes by &lt;a class=&quot;user-mention notranslate&quot; data-hovercard-type=&quot;user&quot; data-hovercard-url=&quot;/users/markgalvan-intel/hovercard&quot; data-octo-click=&quot;hovercard-link-click&quot; data-octo-dimensions=&quot;link_type:self&quot; href=&quot;https://github.com/markgalvan-intel&quot;&gt;@markgalvan-intel&lt;/a&gt; in &lt;a class=&quot;issue-link js-issue-link&quot; data-error-text=&quot;Failed to load title&quot; data-id=&quot;3819710122&quot; data-permission-text=&quot;Title is private&quot; data-url=&quot;https://github.com/GameTechDev/PresentMon/issues/566&quot; data-hovercard-type=&quot;pull_request&quot; data-hovercard-url=&quot;/GameTechDev/PresentMon/pull/566/hovercard&quot; href=&quot;https://github.com/GameTechDev/PresentMon/pull/566&quot;&gt;#566&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;New Contributors&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class=&quot;user-mention notranslate&quot; data-hovercard-type=&quot;user&quot; data-hovercard-url=&quot;/users/DevTechProfile/hovercard&quot; data-octo-click=&quot;hovercard-link-click&quot; data-octo-dimensions=&quot;link_type:self&quot; href=&quot;https://github.com/DevTechProfile&quot;&gt;@DevTechProfile&lt;/a&gt; made their first contribution in &lt;a class=&quot;issue-link js-issue-link&quot; data-error-text=&quot;Failed to load title&quot; data-id=&quot;3773183432&quot; data-permission-text=&quot;Title is private&quot; data-url=&quot;https://github.com/GameTechDev/PresentMon/issues/560&quot; data-hovercard-type=&quot;pull_request&quot; data-hovercard-url=&quot;/GameTechDev/PresentMon/pull/560/hovercard&quot; href=&quot;https://github.com/GameTechDev/PresentMon/pull/560&quot;&gt;#560&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&quot;user-mention notranslate&quot; data-hovercard-type=&quot;user&quot; data-hovercard-url=&quot;/users/Shinigami92/hovercard&quot; data-octo-click=&quot;hovercard-link-click&quot; data-octo-dimensions=&quot;link_type:self&quot; href=&quot;https://github.com/Shinigami92&quot;&gt;@Shinigami92&lt;/a&gt; made their first contribution in &lt;a class=&quot;issue-link js-issue-link&quot; data-error-text=&quot;Failed to load title&quot; data-id=&quot;3754036503&quot; data-permission-text=&quot;Title is private&quot; data-url=&quot;https://github.com/GameTechDev/PresentMon/issues/557&quot; data-hovercard-type=&quot;pull_request&quot; data-hovercard-url=&quot;/GameTechDev/PresentMon/pull/557/hovercard&quot; href=&quot;https://github.com/GameTechDev/PresentMon/pull/557&quot;&gt;#557&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Full Changelog&lt;/strong&gt;: &lt;a class=&quot;commit-link&quot; href=&quot;https://github.com/GameTechDev/PresentMon/compare/v2.4.0...v2.4.1&quot;&gt;&lt;tt&gt;v2.4.0...v2.4.1&lt;/tt&gt;&lt;/a&gt;&lt;/p&gt;</content>
    <author>
      <name>markgalvan-intel</name>
    </author>
    <media:thumbnail height="30" width="30" url="https://avatars.githubusercontent.com/u/79164336?s=60&amp;v=4"/>
  </entry>
  <entry>
    <id>tag:github.com,2008:Repository/53522468/v2.4.0</id>
    <updated>2025-11-11T04:28:19Z</updated>
    <link rel="alternate" type="text/html" href="https://github.com/GameTechDev/PresentMon/releases/tag/v2.4.0"/>
    <title>v2.4.0</title>
    <content type="html">&lt;h1&gt;New Features&lt;/h1&gt;
&lt;h2&gt;Enhancements&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Implemented paced playback of ETL files from the service, allowing the service to process ETL files at realtime cadence&lt;/li&gt;
&lt;li&gt;Added automated test that uses paced ETL playback to test dynamic metric polling API&lt;/li&gt;
&lt;li&gt;Enhanced the flash injection to maintain a connection with the injected code and update settings in realtime&lt;/li&gt;
&lt;li&gt;Added a rainbow bar option for flash injection to help identify frames&lt;/li&gt;
&lt;li&gt;Added the ability to size the flash injection background independent of foreground flash rectangle&lt;/li&gt;
&lt;li&gt;Added the ability to run PresentMon client headless via CLI to perform .csv frame captures&lt;/li&gt;
&lt;li&gt;Added CLI option to list/browse available stats, metrics, and devices&lt;/li&gt;
&lt;li&gt;Enhanced cooperation between clients in multi-client scenarios (telemetry and ETW flush periods)&lt;/li&gt;
&lt;li&gt;Added the ability to capture ETL trace logs from PresentMon client UI (experimental, primarily for issue reporting)&lt;/li&gt;
&lt;li&gt;Enabled logging up to verbose level in production without requiring special build parameters (also added new Verbose2 level)&lt;/li&gt;
&lt;li&gt;PresentMon Installer upgrade fixes to allow for better upgrade experience and silent installations&lt;/li&gt;
&lt;li&gt;Enhanced PresentMon console ULT suite&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Metrics&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;MsBetweenSimulationStart - BETA support - Enabled but still ironing out some issues.&lt;/li&gt;
&lt;li&gt;MsPCLatency - BETA support - Enabled but still ironing out some issues.&lt;/li&gt;
&lt;/ul&gt;
&lt;h1&gt;Bug Fixes&lt;/h1&gt;
&lt;ul&gt;
&lt;li&gt;Fixed injection sometimes skipping drawing flash when clicking rapidly&lt;/li&gt;
&lt;li&gt;Fixed bug in Streamer component (IPC ring buffer) that could lose frames in rare circumstances&lt;/li&gt;
&lt;li&gt;Enhanced present event processing in CompletePresent when handling lost presents.&lt;/li&gt;
&lt;li&gt;Fixed frame type bug when processing composed presents&lt;/li&gt;
&lt;li&gt;Fixed small error in ovelay AnimationError calculation.&lt;/li&gt;
&lt;/ul&gt;</content>
    <author>
      <name>markgalvan-intel</name>
    </author>
    <media:thumbnail height="30" width="30" url="https://avatars.githubusercontent.com/u/79164336?s=60&amp;v=4"/>
  </entry>
  <entry>
    <id>tag:github.com,2008:Repository/53522468/v2.3.1</id>
    <updated>2025-06-10T08:45:40Z</updated>
    <link rel="alternate" type="text/html" href="https://github.com/GameTechDev/PresentMon/releases/tag/v2.3.1"/>
    <title>v2.3.1</title>
    <content type="html">&lt;h2&gt;New Features&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;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.&lt;/li&gt;
&lt;li&gt;Added the following GPU telemetry metrics (currently supported by Intel Arc Battlemage GPUs):
&lt;ul&gt;
&lt;li&gt;GPU Effective Frequency&lt;/li&gt;
&lt;li&gt;GPU Voltage Regulator Temperature&lt;/li&gt;
&lt;li&gt;GPU Memory Effective Bandwidth&lt;/li&gt;
&lt;li&gt;GPU Overvoltage Percent&lt;/li&gt;
&lt;li&gt;GPU Temperature Percent&lt;/li&gt;
&lt;li&gt;GPU Power Percent&lt;/li&gt;
&lt;li&gt;GPU Fan Speed Percent&lt;/li&gt;
&lt;li&gt;GPU Card Power (total board power)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;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.&lt;/li&gt;
&lt;li&gt;Added CLI option to disable overlay alpha blending (reduces overlay impact on target present timing seen in some circumstances)&lt;/li&gt;
&lt;li&gt;Added support to PresentMon console application for detection of Hybrid Presents&lt;/li&gt;
&lt;li&gt;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.&lt;/li&gt;
&lt;li&gt;Stabilized binary version compatibility of PresentMon API by deploying PresentMonAPI.dll side-by-side with the service and moving to a dynamic loading model&lt;/li&gt;
&lt;li&gt;Added Loader .dll + static import .lib to facilitate discovery and endpoint resolution of the PresentMon API&lt;/li&gt;
&lt;li&gt;Added ETL trimmer utility for trimming ETL files to a timestamp range and pruning unnecessary event types (source only, currently no binary distribution provided)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Experimental&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;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)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Security and Lifecycle&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Re-engineered multi-process architecture to enable PresentMon to be run without Administrator privileges&lt;/li&gt;
&lt;li&gt;Improved security by ensuring that Chromium UI frontend runs at lowered integrity even when PresentMon is run elevated&lt;/li&gt;
&lt;li&gt;Upgraded frontend from Vue.js 2 (past end-of-life and unsupported) &amp;amp; Vuex =&amp;gt; Vue.js 3 &amp;amp; Pinia&lt;/li&gt;
&lt;/ul&gt;</content>
    <author>
      <name>planetchili</name>
    </author>
    <media:thumbnail height="30" width="30" url="https://avatars.githubusercontent.com/u/7800662?s=60&amp;v=4"/>
  </entry>
  <entry>
    <id>tag:github.com,2008:Repository/53522468/v2.3.0</id>
    <updated>2024-12-23T16:46:19Z</updated>
    <link rel="alternate" type="text/html" href="https://github.com/GameTechDev/PresentMon/releases/tag/v2.3.0"/>
    <title>v2.3.0</title>
    <content type="html">&lt;h2&gt;New Features&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Added frame generation tracking support for Intel XeSS XeFG and AMD Fluid Motion Frames. The Displayed FPS metric now tracks both application and generated frames in the FPS calculation. In addition PresentMon will report the type of frame using the FrameType metric.&lt;/li&gt;
&lt;li&gt;Added support for Intel XeLL and introduced a new metric called Instrumented Latency, which uses driver-based markers to accurately represent latency from frame start to when the frame is on the display.&lt;/li&gt;
&lt;li&gt;Added ability to configure service logging via registry&lt;/li&gt;
&lt;li&gt;Added Animation Time metric which is the time the CPU started animation work on a frame&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Bug Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Fixed issue where PresentMon would fail initialization the first time it is run after reboot&lt;/li&gt;
&lt;li&gt;Improved accuracy of VRAM Read/Write bandwidth metrics on BMG&lt;/li&gt;
&lt;/ul&gt;</content>
    <author>
      <name>planetchili</name>
    </author>
    <media:thumbnail height="30" width="30" url="https://avatars.githubusercontent.com/u/7800662?s=60&amp;v=4"/>
  </entry>
  <entry>
    <id>tag:github.com,2008:Repository/53522468/v2.2.0</id>
    <updated>2024-10-01T15:17:19Z</updated>
    <link rel="alternate" type="text/html" href="https://github.com/GameTechDev/PresentMon/releases/tag/v2.2.0"/>
    <title>v2.2.0</title>
    <content type="html">&lt;h2&gt;New Features&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Overhauled the ETW backend to reduce event latency from 1000ms =&amp;gt; ~30ms; overlay now displays data instantly without 1 second lag&lt;/li&gt;
&lt;li&gt;Added a new click-to-photon metric that only tracks mouse button events; renamed previous click-to-photon metric to &quot;all-input-to-photon&quot;&lt;/li&gt;
&lt;li&gt;Improved input latency reporting so that input falling on dropped frames is attributed to the next displayed frame rather than being ignored&lt;/li&gt;
&lt;li&gt;Enabled the client to gather log data from the service and increased log coverage, particularly at the &quot;debug&quot; severity level&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Bug Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Fixed column labels for summary stats file &lt;a class=&quot;issue-link js-issue-link&quot; data-error-text=&quot;Failed to load title&quot; data-id=&quot;2428668180&quot; data-permission-text=&quot;Title is private&quot; data-url=&quot;https://github.com/GameTechDev/PresentMon/issues/330&quot; data-hovercard-type=&quot;issue&quot; data-hovercard-url=&quot;/GameTechDev/PresentMon/issues/330/hovercard&quot; href=&quot;https://github.com/GameTechDev/PresentMon/issues/330&quot;&gt;#330&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fixed rare crash due to a race condition &lt;a class=&quot;issue-link js-issue-link&quot; data-error-text=&quot;Failed to load title&quot; data-id=&quot;2462188440&quot; data-permission-text=&quot;Title is private&quot; data-url=&quot;https://github.com/GameTechDev/PresentMon/issues/340&quot; data-hovercard-type=&quot;issue&quot; data-hovercard-url=&quot;/GameTechDev/PresentMon/issues/340/hovercard&quot; href=&quot;https://github.com/GameTechDev/PresentMon/issues/340&quot;&gt;#340&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fixed bug occurring when selecting a non-default adapter &lt;a class=&quot;issue-link js-issue-link&quot; data-error-text=&quot;Failed to load title&quot; data-id=&quot;2365449130&quot; data-permission-text=&quot;Title is private&quot; data-url=&quot;https://github.com/GameTechDev/PresentMon/issues/256&quot; data-hovercard-type=&quot;issue&quot; data-hovercard-url=&quot;/GameTechDev/PresentMon/issues/256/hovercard&quot; href=&quot;https://github.com/GameTechDev/PresentMon/issues/256&quot;&gt;#256&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</content>
    <author>
      <name>planetchili</name>
    </author>
    <media:thumbnail height="30" width="30" url="https://avatars.githubusercontent.com/u/7800662?s=60&amp;v=4"/>
  </entry>
  <entry>
    <id>tag:github.com,2008:Repository/53522468/v2.1.1</id>
    <updated>2024-07-30T04:25:34Z</updated>
    <link rel="alternate" type="text/html" href="https://github.com/GameTechDev/PresentMon/releases/tag/v2.1.1"/>
    <title>2.1.1</title>
    <content type="html">&lt;h2&gt;New Features&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Added option to have the GUI capture application launch its own instance of PresentMon Service as a child process (useful for debugging)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Bug Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Fixed issue with duration of CSV frame capture &lt;a class=&quot;issue-link js-issue-link&quot; data-error-text=&quot;Failed to load title&quot; data-id=&quot;2404366390&quot; data-permission-text=&quot;Title is private&quot; data-url=&quot;https://github.com/GameTechDev/PresentMon/issues/314&quot; data-hovercard-type=&quot;issue&quot; data-hovercard-url=&quot;/GameTechDev/PresentMon/issues/314/hovercard&quot; href=&quot;https://github.com/GameTechDev/PresentMon/issues/314&quot;&gt;#314&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fixed race condition causing loss of frame data when processing offline ETL files &lt;a class=&quot;issue-link js-issue-link&quot; data-error-text=&quot;Failed to load title&quot; data-id=&quot;2402513488&quot; data-permission-text=&quot;Title is private&quot; data-url=&quot;https://github.com/GameTechDev/PresentMon/issues/313&quot; data-hovercard-type=&quot;issue&quot; data-hovercard-url=&quot;/GameTechDev/PresentMon/issues/313/hovercard&quot; href=&quot;https://github.com/GameTechDev/PresentMon/issues/313&quot;&gt;#313&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fixed issue with FrameTime metric calculation &lt;a class=&quot;issue-link js-issue-link&quot; data-error-text=&quot;Failed to load title&quot; data-id=&quot;2395932414&quot; data-permission-text=&quot;Title is private&quot; data-url=&quot;https://github.com/GameTechDev/PresentMon/issues/311&quot; data-hovercard-type=&quot;issue&quot; data-hovercard-url=&quot;/GameTechDev/PresentMon/issues/311/hovercard&quot; href=&quot;https://github.com/GameTechDev/PresentMon/issues/311&quot;&gt;#311&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</content>
    <author>
      <name>markgalvan-intel</name>
    </author>
    <media:thumbnail height="30" width="30" url="https://avatars.githubusercontent.com/u/79164336?s=60&amp;v=4"/>
  </entry>
  <entry>
    <id>tag:github.com,2008:Repository/53522468/v2.1.0</id>
    <updated>2024-06-13T05:24:58Z</updated>
    <link rel="alternate" type="text/html" href="https://github.com/GameTechDev/PresentMon/releases/tag/v2.1.0"/>
    <title>2.1.0</title>
    <content type="html">&lt;h2&gt;New Features&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Added Animation Error metric.&lt;/li&gt;
&lt;li&gt;Added new logging into AppCef and Core projects.&lt;/li&gt;
&lt;li&gt;Created a debug diagnostic channel.&lt;/li&gt;
&lt;li&gt;Added Intel-PresentMon provider.&lt;/li&gt;
&lt;li&gt;Added ULTs for PresentMonService.&lt;/li&gt;
&lt;li&gt;Allow polling rate and drawing rate to vary independently.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Bug Fixes&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Changes for Issue &lt;a class=&quot;issue-link js-issue-link&quot; data-error-text=&quot;Failed to load title&quot; data-id=&quot;2254374376&quot; data-permission-text=&quot;Title is private&quot; data-url=&quot;https://github.com/GameTechDev/PresentMon/issues/238&quot; data-hovercard-type=&quot;issue&quot; data-hovercard-url=&quot;/GameTechDev/PresentMon/issues/238/hovercard&quot; href=&quot;https://github.com/GameTechDev/PresentMon/issues/238&quot;&gt;#238&lt;/a&gt;. Presented FPS X% is now displayed as X% of FPS, not frame times.&lt;/li&gt;
&lt;li&gt;Changes for Issue &lt;a class=&quot;issue-link js-issue-link&quot; data-error-text=&quot;Failed to load title&quot; data-id=&quot;2187196617&quot; data-permission-text=&quot;Title is private&quot; data-url=&quot;https://github.com/GameTechDev/PresentMon/issues/209&quot; data-hovercard-type=&quot;issue&quot; data-hovercard-url=&quot;/GameTechDev/PresentMon/issues/209/hovercard&quot; href=&quot;https://github.com/GameTechDev/PresentMon/issues/209&quot;&gt;#209&lt;/a&gt;. Reduced PRESENTEVENT_CIRCULAR_BUFFER_SIZE to be 1024.&lt;/li&gt;
&lt;li&gt;Fix for Issue &lt;a class=&quot;issue-link js-issue-link&quot; data-error-text=&quot;Failed to load title&quot; data-id=&quot;1872024661&quot; data-permission-text=&quot;Title is private&quot; data-url=&quot;https://github.com/GameTechDev/PresentMon/issues/162&quot; data-hovercard-type=&quot;issue&quot; data-hovercard-url=&quot;/GameTechDev/PresentMon/issues/162/hovercard&quot; href=&quot;https://github.com/GameTechDev/PresentMon/issues/162&quot;&gt;#162&lt;/a&gt;. Autoscale is now recovering zoom in.&lt;/li&gt;
&lt;li&gt;Addressed various low impact security CVEs.&lt;/li&gt;
&lt;/ul&gt;</content>
    <author>
      <name>markgalvan-intel</name>
    </author>
    <media:thumbnail height="30" width="30" url="https://avatars.githubusercontent.com/u/79164336?s=60&amp;v=4"/>
  </entry>
</feed>
