Releases: CXWorld/CapFrameX
CapFrameX v1.8.1
Release Notes
Enhancements & New Features
- Auto generate overlay profiles
- vkcube overlay preview window
- PresentMon 2.4.1 with many fixes and updates
- Overlay list search and filter
- Check for FrameViewService ETW session
Bugfixes
- Option menu combo boxes
- PMD data capture interval length
Platform & Infrastructure
- Smarter PawnIO driver management
- App-level BENCHLAB service management (no need to install the service separately)
- Smarter check for .NET 9 (SDK, Desktop Runtime, Standard Runtime)
Runtime Requirements
- .NET 9 is now required for full feature support and optimal stability. Download here.
CapFrameX Portable Mode
CapFrameX now supports a portable mode that allows the application to run entirely from a single folder without writing to system directories. This is useful for running from USB drives, network shares, or keeping multiple isolated installations.
How It Works
Portable mode is activated by placing a portable.json file in the same directory as the CapFrameX executable. When the application starts, it checks for this file and redirects all data storage to paths relative to the application directory.
Key Features
- Self-contained: All configuration, captures, screenshots, and logs are stored relative to the application folder
- No registry modifications: The application doesn't write to the Windows registry in portable mode
- No system folder usage: Bypasses
%AppData%andDocumentsfolders entirely - Configurable paths: All storage paths can be customized via
portable.json
portable.json Configuration
Create a portable.json file in the CapFrameX application directory with the following structure:
{
"portable": true,
"paths": {
"config": "./Portable/Config",
"captures": "./Portable/Captures",
"screenshots": "./Portable/Screenshots",
"logs": "./Portable/Logs",
"cloud": "./Portable/Captures/Cloud"
}
}Configuration Options
| Property | Description | Default |
|---|---|---|
portable |
Enables portable mode when true |
true |
paths.config |
Configuration files (AppSettings.json, overlay configs, sensor config, UI state) | ./Portable/Config |
paths.captures |
Capture recordings | ./Portable/Captures |
paths.screenshots |
Screenshot storage | ./Portable/Screenshots |
paths.logs |
Log files | ./Portable/Logs |
paths.cloud |
Cloud download directory | ./Portable/Captures/Cloud |
All paths are relative to the application directory. You can use ./ or .\ prefix, or just the folder name.
Requirements
When running in portable mode, the following dependencies must be installed on the system:
The application will check for these dependencies on startup and display a message if any are missing.
Creating a Portable Distribution
- Copy the CapFrameX application files to a folder
- Create a
portable.jsonfile with the configuration above - (Optional) Pre-create the
Portablesubdirectory with:Config,Captures,Screenshots,Logs - The application is now portable and can be moved to any location
Behavior Differences
| Feature | Installed Mode | Portable Mode |
|---|---|---|
| Config storage | %AppData%\CapFrameX\Configuration |
./Portable/Config |
| Captures storage | Documents\CapFrameX\Captures |
./Portable/Captures |
| Screenshots | Documents\CapFrameX\Screenshots |
./Portable/Screenshots |
| Logs | %AppData%\CapFrameX\Logs |
./Portable/Logs |
| UI state (window size, column widths) | %LocalAppData%\Jot |
./Portable/Config |
| Window title | "CapFrameX" | "CapFrameX Portable" |
| Config migration | Migrates old settings | Skipped |
| Start with Windows | Available | Disabled |
Notes
- Settings configured in portable mode are stored in the portable config folder and won't affect or be affected by an installed version
- The
portable.jsonfile must be valid JSON; if parsing fails, the application falls back to installed mode - Directories are automatically created if they don't exist
Troubleshooting & Known Issues
The following tips address the most common issues reported by users and can help resolve stability, overlay, and capture-related problems efficiently. We recommend working through them in order if you encounter unexpected behavior.
-
Ensure you are running the latest version
If you experience application crashes or unstable behavior, verify that you have installed CapFrameX v1.8.1 or newer. Many known issues have been resolved in this patch. If you were previously using version 1.7.7, we recommend uninstalling CapFrameX before installing the new version. -
Reset application settings
In some cases, corrupted or outdated configuration files may cause problems. Deleting
%appdata%/CapFrameX/Configuration/AppSettings.json
will reset CapFrameX to its default settings and often resolves startup or UI-related issues. -
Reset overlay configuration files
If overlay-related problems persist, try deleting the overlay configuration files located at
%appdata%/CapFrameX/Configuration/OverlayEntryConfiguration_(0/1/2).json.
These files will be recreated automatically on the next application start. -
Restore missing or zero-value overlay entries
When overlay entries are missing or display constant zero values, open the Overlay tab and use the Reset button to restore all overlay entries to a valid default state. -
Fix incorrect overlay entry order
If the order of overlay entries appears inconsistent or unintentionally rearranged, use the Sort button in the Overlay tab to restore a clean and logical ordering. -
Resolve frametime anomalies after updates
In rare cases, existing background capture processes can interfere with CapFrameX after an update. If you encounter frametime issues, close all running PresentMon processes before installing or launching CapFrameX v1.8.1 release. -
Avoid conflicts with other monitoring tools
Applications such as HWiNFO or AIDA64 that implement their own FPS or frametime metrics may conflict with CapFrameXβs capture service, as they also rely on PresentMon-based mechanisms. Disabling overlapping FPS or frametime monitoring features in those tools is strongly recommended when using CapFrameX.
Known Limitations
- PC latency metric may return invalid values (NaN) under specific conditions.
CapFrameX v1.8.0 beta
Release Notes
Enhancements & New Features
- Support Intel Panther Lake voltage sensors
- Added model IDs for Intel Arrow Lake-S Refresh (reserved)
- Added model IDs for Intel Core Ultra 300 Series (reserved)
- Full working portable mode
- Check for .NET 9 and Visual C++ Redistributables on app start
Bugfixes
- Overlay group control
Platform & Infrastructure
- Updated several Nuget packages
Runtime Requirements
- .NET 9 is now required for full feature support and optimal stability. Download here.
CapFrameX Portable Mode
CapFrameX now supports a portable mode that allows the application to run entirely from a single folder without writing to system directories. This is useful for running from USB drives, network shares, or keeping multiple isolated installations.
How It Works
Portable mode is activated by placing a portable.json file in the same directory as the CapFrameX executable. When the application starts, it checks for this file and redirects all data storage to paths relative to the application directory.
Key Features
- Self-contained: All configuration, captures, screenshots, and logs are stored relative to the application folder
- No registry modifications: The application doesn't write to the Windows registry in portable mode
- No system folder usage: Bypasses
%AppData%andDocumentsfolders entirely - Configurable paths: All storage paths can be customized via
portable.json
portable.json Configuration
Create a portable.json file in the CapFrameX application directory with the following structure:
{
"portable": true,
"paths": {
"config": "./Portable/Config",
"captures": "./Portable/Captures",
"screenshots": "./Portable/Screenshots",
"logs": "./Portable/Logs",
"cloud": "./Portable/Captures/Cloud"
}
}Configuration Options
| Property | Description | Default |
|---|---|---|
portable |
Enables portable mode when true |
true |
paths.config |
Configuration files (AppSettings.json, overlay configs, sensor config, UI state) | ./Portable/Config |
paths.captures |
Capture recordings | ./Portable/Captures |
paths.screenshots |
Screenshot storage | ./Portable/Screenshots |
paths.logs |
Log files | ./Portable/Logs |
paths.cloud |
Cloud download directory | ./Portable/Captures/Cloud |
All paths are relative to the application directory. You can use ./ or .\ prefix, or just the folder name.
Requirements
When running in portable mode, the following dependencies must be installed on the system:
The application will check for these dependencies on startup and display a message if any are missing.
Creating a Portable Distribution
- Copy the CapFrameX application files to a folder
- Create a
portable.jsonfile with the configuration above - (Optional) Pre-create the
Portablesubdirectory with:Config,Captures,Screenshots,Logs - The application is now portable and can be moved to any location
Behavior Differences
| Feature | Installed Mode | Portable Mode |
|---|---|---|
| Config storage | %AppData%\CapFrameX\Configuration |
./Portable/Config |
| Captures storage | Documents\CapFrameX\Captures |
./Portable/Captures |
| Screenshots | Documents\CapFrameX\Screenshots |
./Portable/Screenshots |
| Logs | %AppData%\CapFrameX\Logs |
./Portable/Logs |
| UI state (window size, column widths) | %LocalAppData%\Jot |
./Portable/Config |
| Window title | "CapFrameX" | "CapFrameX Portable" |
| Config migration | Migrates old settings | Skipped |
| Start with Windows | Available | Disabled |
Notes
- Settings configured in portable mode are stored in the portable config folder and won't affect or be affected by an installed version
- The
portable.jsonfile must be valid JSON; if parsing fails, the application falls back to installed mode - Directories are automatically created if they don't exist
Troubleshooting & Known Issues
The following tips address the most common issues reported by users and can help resolve stability, overlay, and capture-related problems efficiently. We recommend working through them in order if you encounter unexpected behavior.
-
Ensure you are running the latest version
If you experience application crashes or unstable behavior, verify that you have installed CapFrameX v1.7.9 or newer. Many known issues have been resolved in this patch. If you were previously using version 1.7.7, we recommend uninstalling CapFrameX before installing the new version. -
Reset application settings
In some cases, corrupted or outdated configuration files may cause problems. Deleting
%appdata%/CapFrameX/Configuration/AppSettings.json
will reset CapFrameX to its default settings and often resolves startup or UI-related issues. -
Reset overlay configuration files
If overlay-related problems persist, try deleting the overlay configuration files located at
%appdata%/CapFrameX/Configuration/OverlayEntryConfiguration_(0/1/2).json.
These files will be recreated automatically on the next application start. -
Restore missing or zero-value overlay entries
When overlay entries are missing or display constant zero values, open the Overlay tab and use the Reset button to restore all overlay entries to a valid default state. -
Fix incorrect overlay entry order
If the order of overlay entries appears inconsistent or unintentionally rearranged, use the Sort button in the Overlay tab to restore a clean and logical ordering. -
Resolve frametime anomalies after updates
In rare cases, existing background capture processes can interfere with CapFrameX after an update. If you encounter frametime issues, close all running PresentMon processes before installing or launching CapFrameX v1.7.9 release or v1.8.0 beta. -
Avoid conflicts with other monitoring tools
Applications such as HWiNFO or AIDA64 that implement their own FPS or frametime metrics may conflict with CapFrameXβs capture service, as they also rely on PresentMon-based mechanisms. Disabling overlapping FPS or frametime monitoring features in those tools is strongly recommended when using CapFrameX.
Known Limitations
- PC latency metric may return invalid values (NaN) under specific conditions.
BENCHLAB Service
When using BENCHLAB service, unzip the folder in a suitable installation folder like C:\Benchlab Service or D:\Tools, then run the .bat script as admin. Don't install the service from the Download folder. Install latest .NET 9 runtime. Download here.
CapFrameX v1.7.9
Release Notes
Enhancements & New Features
- Animation Error smoothness metric. More info here.
Bugfixes
- AMD Ryzen 9000 clock speed calculation when bus speed is not 100MHz
Platform & Infrastructure
- Reworked Microsoft Visual C++ Redistributable installer detection
Runtime Requirements
- .NET 9 is now required for full feature support and optimal stability. Download here.
Troubleshooting & Known Issues
The following tips address the most common issues reported by users and can help resolve stability, overlay, and capture-related problems efficiently. We recommend working through them in order if you encounter unexpected behavior.
-
Ensure you are running the latest version
If you experience application crashes or unstable behavior, verify that you have installed CapFrameX v1.7.9 or newer. Many known issues have been resolved in this patch. If you were previously using version 1.7.7, we recommend uninstalling CapFrameX before installing the new version. -
Reset application settings
In some cases, corrupted or outdated configuration files may cause problems. Deleting
%appdata%/CapFrameX/Configuration/AppSettings.json
will reset CapFrameX to its default settings and often resolves startup or UI-related issues. -
Reset overlay configuration files
If overlay-related problems persist, try deleting the overlay configuration files located at
%appdata%/CapFrameX/Configuration/OverlayEntryConfiguration_(0/1/2).json.
These files will be recreated automatically on the next application start. -
Restore missing or zero-value overlay entries
When overlay entries are missing or display constant zero values, open the Overlay tab and use the Reset button to restore all overlay entries to a valid default state. -
Fix incorrect overlay entry order
If the order of overlay entries appears inconsistent or unintentionally rearranged, use the Sort button in the Overlay tab to restore a clean and logical ordering. -
Resolve frametime anomalies after updates
In rare cases, existing background capture processes can interfere with CapFrameX after an update. If you encounter frametime issues, close all running PresentMon processes before installing or launching CapFrameX v1.7.9. -
Avoid conflicts with other monitoring tools
Applications such as HWiNFO or AIDA64 that implement their own FPS or frametime metrics may conflict with CapFrameXβs capture service, as they also rely on PresentMon-based mechanisms. Disabling overlapping FPS or frametime monitoring features in those tools is strongly recommended when using CapFrameX.
Known Limitations
- PC latency metric may return invalid values (NaN) under specific conditions.
BENCHLAB Service
When using BENCHLAB service, unzip the folder in a suitable installation folder like C:\Benchlab Service or D:\Tools, then run the .bat script as admin. Don't install the service from the Download folder. Install latest .NET 9 runtime. Download here.
CapFrameX v1.7.8
Release Notes
Overview
CapFrameX v1.7.8 continues the development trajectory of the 1.7.x beta cycle, consolidating stability improvements, expanded hardware support, refined metrics, and usability enhancements introduced in versions 1.7.5 through 1.7.7.
This release focuses on fixing WinRing0 security issues, improving capture fidelity, monitoring reliability, and compatibility with modern CPU and GPU platforms.
Enhancements & New Features
Unified Metric Improvements
- Extended MsBetweenDisplayChange and MsBetweenPresents metrics across Analysis, Comparison, and Report views.
- Improved visualization of frame pacing through refined frame time and distribution charts.
- Added additional filtering capabilities to isolate swapchain and present events for deeper analysis.
Overlay & UI Improvements
- Enhanced overlay entry handling with improved default ordering and persistent sorting.
- Added Sort Overlay Entries button for easier overlay configuration.
- Introduced a Debug Monitor view to provide real-time diagnostic insights into capture, sensors, and statistics providers.
Hardware Support
Graphics & Sensor Enhancements
- Support Intel Panther Lake + Xe3 Graphics
- Expanded GPU and sensor support for modern architectures:
- AMD Strix Point
- NVIDIA RTX 50 series
- Improved accuracy and stability of PC Latency metrics on NVIDIA GPUs (beta).
- Added GPU voltage monitoring and automatic monitor refresh rate detection.
- Introduced D3D dedicated GPU memory performance counters.
Adapter Management
- Added the ability to explicitly select the Primary Graphics Adapter.
- Automatic filtering of integrated GPUs when a discrete GPU is available.
Power Measurement Support
BENCHLAB Support
- Continued integration of BENCHLAB using a dedicated Windows service and client architecture.
- Improved communication reliability between CapFrameX and BENCHLAB services.
- Enables more robust automated benchmarking workflows, including synchronized capture start/stop and metadata handling.
Powenetics v2 PMD Support
- Added and refined support for Powenetics v2 Power Measurement Device.
- Improved power data acquisition stability and synchronization with frame time captures.
- Support for custom device naming and clearer data presentation within the PMD tab.
- Enables accurate correlation of performance, power consumption, and efficiency metrics during benchmarks.
Stability, Accuracy & Performance
Core Fixes
- Fixed PresentMon ETW memory leak that could cause loss of capture events during long sessions.
- Improved exception handling in the statistics provider to prevent analysis crashes.
- General performance optimizations across capture, analysis, and overlay pipelines.
Capture & Analysis Fixes
- Fixed DIMM temperature sensor readings.
- Resolved drag-and-drop issues when importing capture files.
- Corrected handling of MsBetweenPresents data in the Comparison tab.
- Improved reliability of long-running captures under high ETW load.
Platform & Infrastructure
Runtime Requirements
- .NET 9 is now required for full feature support and optimal stability. Download here.
Driver & OS Interaction
- Internal
PawnIO.sysmanagement to reduce third-party driver conflicts. - Improved CPU thread management for hybrid and high-core-count processors.
- Reworked IGCL support for Intel GPUs, including multi-adapter handling.
Troubleshooting & Known Issues
The following tips address the most common issues reported by users and can help resolve stability, overlay, and capture-related problems efficiently. We recommend working through them in order if you encounter unexpected behavior.
-
Ensure you are running the latest version
If you experience application crashes or unstable behavior, verify that you have installed CapFrameX v1.7.8 Patch 1 or newer. Many known issues have been resolved in this patch. If you were previously using version 1.7.7, we recommend uninstalling CapFrameX before installing the new version. -
Reset application settings
In some cases, corrupted or outdated configuration files may cause problems. Deleting
%appdata%/CapFrameX/Configuration/AppSettings.json
will reset CapFrameX to its default settings and often resolves startup or UI-related issues. -
Reset overlay configuration files
If overlay-related problems persist, try deleting the overlay configuration files located at
%appdata%/CapFrameX/Configuration/OverlayEntryConfiguration_(0/1/2).json.
These files will be recreated automatically on the next application start. -
Restore missing or zero-value overlay entries
When overlay entries are missing or display constant zero values, open the Overlay tab and use the Reset button to restore all overlay entries to a valid default state. -
Fix incorrect overlay entry order
If the order of overlay entries appears inconsistent or unintentionally rearranged, use the Sort button in the Overlay tab to restore a clean and logical ordering. -
Resolve frametime anomalies after updates
In rare cases, existing background capture processes can interfere with CapFrameX after an update. If you encounter frametime issues, close all running PresentMon processes before installing or launching CapFrameX v1.7.8. -
Avoid conflicts with other monitoring tools
Applications such as HWiNFO or AIDA64 that implement their own FPS or frametime metrics may conflict with CapFrameXβs capture service, as they also rely on PresentMon-based mechanisms. Disabling overlapping FPS or frametime monitoring features in those tools is strongly recommended when using CapFrameX.
Known Limitations
- PC latency metric may return invalid values (NaN) under specific conditions.
BENCHLAB Service
When using BENCHLAB service, unzip the folder in a suitable installation folder like C:\Benchlab Service or D:\Tools, then run the .bat script as admin. Don't install the service from the Download folder. Install latest .NET 9 runtime. Download here.
CapFrameX v1.7.7 beta
Update 2026/01/01
- Bugfix PresentMon memory leak causing ETW events getting lost
- Bugfix order Nvidia GPUs overlay entries
- Performance optimizations
- Statistic provider exceptions handling
- Added swapchain filter
- Added Debug Monitor
Update 2025/12/22
- The PawnIO.sys driver conflict with third-party tools has been resolved. If you require a PawnIO installation for other applications, you may now install it. CapFrameX manages this component independently. Install latest .NET 9 runtime. Download here.
- Reworked CPU thread management
- Performance optimizations
- Reworked IGCL support (Intel GPUs and iGPUs) with multi adapter handling
- Fixed DIMM temperature sensors
- Fixed bug on Comparison tab when using standard MsBetweenPresents metrics
- Fixed bug when Drag&Drop captures in folder list
- Added PC Latency for Nvidia graphics cards. Feature is still beta state, reports NaN in some cases.
- Added voltage sensor for Nvidia GPUs
- Added monitor refresh rate for Nvidia GPUs
- Added D3D Dedicated GPU memory performance counter
- Reworked overlay entry defaults
- Added sorting overlay entries button
- Reworked sensor sorting
- Added selecting primary graphics adapter. Auto (default) filter removes iGPUs when at least one dGPU is detected. Restart CapFrameX after changing the primary adapter!
BENCHLAB Service
When using BENCHLAB service, unzip the folder in a suitable installation folder like C:\Benchlab Service or D:\Tools, then run the .bat script as admin. Don't install the service from the Download folder. Install latest .NET 9 runtime. Download here.
Update 2025/12/09
- Bugfix CPU loads (showing only 0 and 6 mostly)
- PawnIO.sys driver management via SCM (it's recommended to uninstall PawnIO)
- "Minimize to tray" option in settings menu
- Report GPU driver version AMD, Nvidia, and Intel
Enhancements
- LibreHardwareMonitorLib support
This beta adds support for LibreHardwareMonitorLib, which we customized to our needs.
Install .NET 9 for full library support: https://dotnet.microsoft.com/en-us/download/dotnet/9.0
-
Integrated PawnIO installer
The PawnIO installer is now built directly into the CapFrameX installer. No separate installation step is needed anymore. -
WinRing0.sys security issue resolved
We have removed the dependency on WinRing0.sys, closing the related security risk. -
PresentMon updated to version 2.4
The new PresentMon version adds support for Nvidia Multi Frame Generation (x2, x3, x4) when using the MsBetweenDisplayChange option in the settings menu.
What is the difference between MsBetweenDisplayChange and MsBetweenPresents?
-
MsBetweenPresents measures the time between present calls from the application. This reflects how often the game submits frames.
-
MsBetweenDisplayChange measures the time between actual displayed frames. This includes any generated frames (e.g., from Frame Generation). Because Multi Frame Generation produces additional frames that are not directly presented by the game, only MsBetweenDisplayChange can show the effective frame rate with FG x2, x3, or x4 enabled.

CapFrameX v1.7.6 beta
Update 2025/08/07
- New PresentMon version with ETW buffer overflow fix
Update 2025/08/04
New features
- Universal hybrid core detection for AMD (Performance + Dense cores) and Intel (Performance + Efficiency cores)
- Thread Affinity Controller working with AMD dense cores
- Support AMD Strix Point
- Experimental support Intel Nova Lake
Enhancements
- Eliminated lazy loading for capture files to resolve user-reported issues
- Performance optimization capture files management
- Performance optimization slider handling on Analysis tab (Real time update option)
Bugfixes
- Thread Affinity Controller fixed for Zen 5
New features
- Support Nvidia Blackwell
- Support AMD Strix Point
- Support PresentMon v2.3.1
- Frame time distribution chart
Important: This version is not compatible with Nvidia's Multi Frame Generation! We are working on a solution with Nvidia.
Enhancements
- Lazy load capture files (aggregated file size > 512MB)
- Removed Windows Media Player dependency (NAudio library)
Bugfixes
- Fixed Zen 5 VID sensor readings
- Fixed frame time issues caused by ETW buffer overflow
When using BENCHLAB service, unzip the folder in a suitable installation folder like C:\Benchlab Service or D:\Tools, then run the .bat script as admin. Don't install the service from the Download folder. Install latest .NET 8 runtime. Download here.
CapFrameX v1.7.5 beta
Update 2025/04/15
- Bugfix capturing frame times when using XeFG
- Custom game name working again
- Custom CPU + GPU name on PMD Tab
- BENCHLAB support
- Windows service/client application architecture (see attached service installer)
- Unzip the folder in a suitable installation folder like C:\Benchlab Service or D:\Tools, then run the .bat script as admin. Don't install the service from the Download folder.
Important: Install latest .NET 8 runtime. Download here.
Update 2025/01/25
- Bugfix overlay metrics + performance optimization
Update 2025/01/21
- Graphical representation of MsBetweenDisplayChange times in frame time graph
Update 2025/01/18
- Bugfix overlay run history metrics when using MsBetweenDisplayChange
Update 2025/01/17
- Support Nvidia RTX 50 series
- Support DLSS 4 (Multi Frame Generation)
- Bugfix app crashing when importing FrameView logs
- Support Arrow Lake-H
Important: Enable MsBetweenDisplayChange metrics in option menu when using DLSS4!
Update 2025/01/12
- New MsBetweenDisplayChange metrics: real-time overlay metrics, Analysis + Comparison + Report tab
- MsBetweenDisplayChange metrics provide enhanced consistency when using frame interpolation technologies, offering a more accurate reflection of the user experience. This new option is disabled by default, but enabling it is strongly recommended for benchmarks with Intel's Arc B series and XeSS Frame Generation. Standard metrics fail to fully capture the true user experience, making MsBetweenDisplayChange metrics a valuable addition for precise performance evaluation.
- Bugfix MsBetweenDisplayChange metrics on Comparison tab
Important note: Nvidia's RTX 50 series + MFG will be supported soon!
MsBetweenDisplayChange metrics enabled

MsBetweenDisplayChange metrics disabled

Update 2025/01/11
- PresentMon v2.3.0 with tracking support for Intel XeSS XeFG and AMD Fluid Motion Frames
Update 2024/12/15
- Total Board Power sensor Intel Arc Battlemage
New features
- Support Intel Lunar Lake
- Support Intel Arc Graphics (130V, 140V)
- Experimental Support Intel Arc Battlemage
- New overlay real-time metrics
CapFrameX v1.7.4
New features
- Support AMD Zen 5
- Support Intel Arrow Lake
- Thread Affinity Controller compatible with Arrow Lake core layout
- PresentMon v2.2 with new Start-to-PresentReturn / PresentReturn-to-PresentReturn frame time measurement approach
- New CPU Busy metric which indicates the duration the CPU was engaged in processing the frame before presenting it
- Added TBP Sim for AMD RDNA2 graphics cards
Image source: VideoCardz
Enhancements
- PMD metrics as floating point numbers with one decimal digit
Bugfixes
- Exception handling AMD ADLX API calls
Info
With the new PresentMon version the frame time measurement approach has changed from Present-to-Present to Start-to-PresentReturn / PresentReturn-to-PresentReturn. Taken from the PresentMon release notes:
"The majority of metrics are changed to use the time that the CPU started working on a frame as the reference point instead of the present() call, with values that are more aligned to measuring the quality of graphics applications (e.g., latency and duration of interaction and displayed frames). See README-ConsoleApplication.md for more details."
Unwinder (the author of RTSS):
"There is no best or preferable method. Both have their own different usage cases. Frame-start-to-frame-start frametime graph can be used to validate framepacing quality of latency oriented framerate limiting modes (low latency SK limiter mode, async/back edge sync RTSS limiter modes, NV CPL framerate limiter etc). Such graph should become "flat" when such framerate limiting strategy is in use. Present-to-present frametime graph can be used to validate framepacing quality of framerate limiters prioritizing presentation timings adjustment (latent sync or normal framerate limiter in SK, front edge sync or scanline sync in RTSS). Such graph is expected to jitter if latency oriented framerate limiting strategy is in use, but become "flat" if framerate limiter prioritize presentation timings adjustment. You may also switch between these two modes to determine which framerate limiting strategy is used by some other third party framerate limiters or in-game framerate limiters."

CapFrameX v1.7.4 beta
Update 2024/11/2
- Thread Affinity Controller compatible with Arrow Lake core layout
- Added TBP Sim for AMD RDNA2 graphics cards
New features
- Support Intel Arrow Lake
- PresentMon v2.2 with new Start-to-PresentReturn / PresentReturn-to-PresentReturn frame time measurement approach
- New CPU Busy metric which indicates the duration the CPU was engaged in processing the frame before presenting it
Image source: VideoCardz
Enhancements
- PMD metrics as floating point numbers with one decimal digit
Bugfixes
- Exception handling AMD ADLX API calls
Info
With the new PresentMon version the frame time measurement approach has changed from Present-to-Present to Start-to-PresentReturn / PresentReturn-to-PresentReturn. Taken from the PresentMon release notes:
"The majority of metrics are changed to use the time that the CPU started working on a frame as the reference point instead of the present() call, with values that are more aligned to measuring the quality of graphics applications (e.g., latency and duration of interaction and displayed frames). See README-ConsoleApplication.md for more details."
Unwinder (the author of RTSS):
"There is no best or preferable method. Both have their own different usage cases. Frame-start-to-frame-start frametime graph can be used to validate framepacing quality of latency oriented framerate limiting modes (low latency SK limiter mode, async/back edge sync RTSS limiter modes, NV CPL framerate limiter etc). Such graph should become "flat" when such framerate limiting strategy is in use. Present-to-present frametime graph can be used to validate framepacing quality of framerate limiters prioritizing presentation timings adjustment (latent sync or normal framerate limiter in SK, front edge sync or scanline sync in RTSS). Such graph is expected to jitter if latency oriented framerate limiting strategy is in use, but become "flat" if framerate limiter prioritize presentation timings adjustment. You may also switch between these two modes to determine which framerate limiting strategy is used by some other third party framerate limiters or in-game framerate limiters."

CapFrameX v1.7.3 beta
Update 2024/06/10
- Support AMD Zen 5 Granite Ridge
- Fixed FPS counter showing values for wrong process when multiple processes were detected
New features
- No new features for now
Enhancements
- UI/layout improvements for low display resolutions
Bugfixes
- Fixed missing TBP sensor (ADLX) for AMD graphics cards
- Bugfix minimize CX to tray
Update 2024/02/23
- Bugfix NVML PCIe throughput sensors














