Improve PerfInfo debug window#5899
Merged
sturnclaw merged 5 commits intopioneerspacesim:masterfrom Aug 23, 2024
Merged
Conversation
- Use font icons for tab names - Move most performance counters into a tab - Add process and lua memory graphs - Add current FPS to window title and color-coded performance stats to header
- All lua-side debug tabs can be hot-reloaded when active with Ctrl+R - Move responsibility for submitting tab item into debug module - All tabs now use icon + tooltip instead of explicit name
- Counters calculate history average piece-wise rather than iterating the whole array - Display min/max/recent average statistics - Extend history to 300 samples (5s for frametime counters, 5m for memory counters)
Member
Author
|
This work was mostly done late last year - I had originally intended to add some additional functionality in the meantime and shelved the branch. Time did it's usual thing in the interim and I've completely forgotten what I intended to add further, so it's getting PR'd now. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
I've converted the PerfInfo debug tabs to use icons rather than names, made the debug tabs themselves hot-reloadable, and improved the amount of data shown in the performance plots displayed in the performance section. Frame graphs now display the last 5 seconds of frame timings (up from 1s), and have both a recent "instantaneous average" and whole-graph average. Memory graphs (which have a sample rate of 1Hz instead of ~60Hz) now show the last five minutes of memory usage for a more complete picture.
The PerfInfo window is easier to read and use at smaller window sizes, and can be collapsed completely to only display the current FPS while flying around the world as a built-in FPS counter.
I've also made the counters slightly cheaper to update in most cases, which should entirely offset any performance loss from increasing the number of samples per counter by 5x.