yuzu/src/core/hle/service/nvdrv
ameerj 5bef54618a perf_stats: Rework FPS counter to be more accurate
The FPS counter was based on metrics in the nvdisp swapbuffers call. This metric would be accurate if the gpu thread/renderer were synchronous with the nvdisp service, but that's no longer the case.

This commit moves the frame counting responsibility onto the concrete renderers after their frame draw calls. Resulting in more meaningful metrics.
The displayed FPS is now made up of the average framerate between the previous and most recent update, in order to avoid distracting FPS counter updates when framerate is oscillating between close values.

The status bar update frequency was also changed from 2 seconds to 500ms.
2021-05-15 20:34:20 -04:00
..
devices perf_stats: Rework FPS counter to be more accurate 2021-05-15 20:34:20 -04:00
interface.cpp hle: kernel: Migrate KReadableEvent and KWritableEvent to KAutoObject. 2021-05-05 16:40:51 -07:00
interface.h hle: kernel: Rename WritableEvent to KWritableEvent. 2021-02-05 14:00:36 -08:00
nvdata.h hle: service: nvdrv: Revert #4981 to remove usage of SleepClientThread. 2020-12-28 16:33:48 -08:00
nvdrv.cpp hle: kernel: Migrate KReadableEvent and KWritableEvent to KAutoObject. 2021-05-05 16:40:51 -07:00
nvdrv.h hle: kernel: Migrate KReadableEvent and KWritableEvent to KAutoObject. 2021-05-05 16:40:51 -07:00
nvmemp.cpp service: Eliminate usages of the global system instance 2020-11-26 20:03:11 -05:00
nvmemp.h service: Eliminate usages of the global system instance 2020-11-26 20:03:11 -05:00
syncpoint_manager.cpp hle: service: nvdrv: Implement SyncpointManager, to manage syncpoints. 2020-11-01 01:51:54 -07:00
syncpoint_manager.h nvdrv, video_core: Don't index out of bounds when given invalid syncpoint ID 2020-11-24 12:59:41 -05:00