PresentMon icon indicating copy to clipboard operation
PresentMon copied to clipboard

[suggestion] Add metrics for disk use

Open cgtrout opened this issue 10 months ago • 6 comments

Starfield is an example of a game that seems to be 'data-bound' where SSD usage spikes and causes an increase of frame-time (along with lower GPU use). Being able to see graphs/metrics for disk use may be useful to have to identify IO bound scenarios.

cgtrout avatar Sep 13 '23 09:09 cgtrout

rofl. There is tons of utilities for this. Why ask this feature on a graphic pipeline monitoring tool?

fdutheil avatar Sep 17 '23 11:09 fdutheil

"PresentMon traces key performance metrics such as the CPU, GPU, and Display frame durations and latencies; and works across different graphics API such as DirectX, OpenGL, and Vulkan, different hardware configurations, and for both desktop and UWP applications."

This seems to suggest it is used for more than GPU monitoring.

Future games will increasingly be streaming data from SSDs and thus many games will have bottlenecks created by this. Having SSD metrics alongside would be useful in the same way that having CPU metrics alongside the GPU metrics is useful.

cgtrout avatar Sep 17 '23 12:09 cgtrout

And part of it is about having a tool that will show it in the same place. It is hard to correlate the data when multiple tools have to be used.

cgtrout avatar Sep 17 '23 12:09 cgtrout

This seems to suggest it is used for more than GPU monitoring.

"graphic pipeline monitoring tool" != GPU monitoring. That's why "PM does a bit more than monitor a GPU". GPU in not the only component involved in graphic rendering. Some other hints are visible in the text you quote, like APIs PM focuses on. If you manage to get DirectX, OpenGL, and Vulkan run on your SSD controller, let the world know, I always wanted to see if we can SLI SSDs "RAID 0-style".

More seriously, if you really wanna do correlation and serious monitoring (I/Os, etc.) , get up some time series plateform to centralize your data. You'll be able to have proper visualization tools as a bonus.

fdutheil avatar Sep 22 '23 14:09 fdutheil

A quote from Intels site:

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.

This suggests this tool is intended for evaluating bottlenecks in games.

The old idea that a game is either CPU bottlenecked or GPU bottlenecked is [over-simplified] and tools like these need to cover the data side of things to give the full picture since it is undeniable that future next generation games will be data-bound a good portion of the time. Look at the design of the PS5. It was designed completely around streaming data off a fast SSD as quickly as possible.

We need to know why the frame times spike and the old way of monitoring things does not cover the data side of things.

Edit: changed one word (in [] brackets)

cgtrout avatar Sep 22 '23 14:09 cgtrout

Let me just say this is a perfectly reasonable request, and we'll consider this for our future roadmap.

Our current focus is on making the CPU and GPU metrics as efficient, correct, and useful as possible but there will always be the next level of information that would help analyze a particular situation. I agree there is value in having a single tool to help collect and visualize everything, but we also have to draw a line somewhere and we're still trying to figure that out.

Please only add constructive comments here.