luke thatcher
0a443d68c5
Improve performance of RHI GPU draw call / num primitive stats
...
- Old code relied on atomic increments in the RHI_DRAW_CALL_INC / RHI_DRAW_CALL_STATS macros, which is expensive, particularly on platforms with poor atomic performance.
- New system replaces the atomic writes with a context-specific stats structure, which is accumulated by the RHI thread into the global structure.
- Contexts write stat data through a "Stats" pointer on the IRHIComputeContext, which is set automatically by the command list management code. The pointer is replaced whenever a new "draw call category" is pushed, to redirect the counts.
- Also moved some macro definitions around so more of the system can be removed when HAS_GPU_STATS is 0. Removed dependencies on CSV_PROFILER.
Moved Begin/EndFrame, Begin/EndScene, Begin/EndDrawingViewport into the immediate RHICmdList
- They were already immediate-only functions due to a check() they contain.
#rb Zach.Bethel
#preflight 635fed4af97758810b50cb06
[CL 22875455 by luke thatcher in ue5-main branch]
2022-10-31 20:02:27 -04:00
..
2022-09-26 13:19:03 -04:00
2022-10-31 20:01:34 -04:00
2022-10-24 15:47:30 -04:00
2022-10-27 13:57:26 -04:00
2022-10-26 07:34:18 -04:00
2022-10-28 11:00:57 -04:00
2022-10-26 12:57:32 -04:00
2022-10-13 14:40:48 -04:00
2022-10-28 15:38:42 -04:00
2022-10-29 02:59:59 -04:00
2022-09-24 13:57:58 -04:00
2022-10-12 02:36:19 -04:00
2022-10-22 15:35:08 -04:00
2022-10-21 13:43:26 -04:00
2022-10-26 16:14:19 -04:00
2022-09-24 13:57:58 -04:00
2022-09-24 13:57:58 -04:00
2022-09-24 13:57:58 -04:00
2022-10-26 23:20:03 -04:00
2022-10-10 01:07:51 -04:00
2022-10-26 16:14:53 -04:00
2022-09-24 13:57:58 -04:00
2022-10-28 15:57:37 -04:00
2022-10-28 13:17:02 -04:00
2022-09-24 13:57:58 -04:00
2022-10-26 12:57:32 -04:00
2022-09-26 13:18:59 -04:00
2022-09-24 13:57:58 -04:00
2022-10-31 06:07:22 -04:00
2022-10-31 11:43:34 -04:00
2022-10-19 14:38:31 -04:00
2022-10-31 20:02:27 -04:00
2022-10-27 11:07:42 -04:00
2022-09-24 13:57:58 -04:00
2022-10-31 20:02:27 -04:00
2022-10-31 11:39:40 -04:00
2022-09-24 13:57:58 -04:00
2022-09-24 13:57:58 -04:00
2022-10-26 12:57:32 -04:00
2022-10-26 19:29:11 -04:00
2022-10-10 01:07:51 -04:00
2022-09-24 13:57:58 -04:00
2022-09-24 13:57:58 -04:00
2022-10-22 15:36:09 -04:00
2022-10-26 12:57:32 -04:00
2022-10-26 12:57:32 -04:00
2022-10-18 08:35:42 -04:00
2022-10-26 18:41:26 -04:00
2022-10-17 17:59:40 -04:00
2022-10-26 12:57:32 -04:00
2022-10-07 18:46:18 -04:00
2022-10-14 17:23:47 -04:00
2022-10-26 15:02:30 -04:00
2022-10-14 15:26:53 -04:00
2022-10-28 12:38:22 -04:00
2022-10-28 15:39:05 -04:00
2022-09-24 13:57:58 -04:00
2022-10-31 20:02:05 -04:00
2022-10-29 11:48:32 -04:00
2022-10-26 12:57:32 -04:00
2022-09-24 13:57:58 -04:00
2022-10-10 13:51:07 -04:00
2022-09-30 19:22:03 -04:00
2022-09-24 13:57:58 -04:00
2022-10-28 16:09:37 -04:00
2022-10-18 19:10:31 -04:00
2022-09-28 18:29:12 -04:00
2022-09-26 13:18:59 -04:00
2022-10-03 20:40:51 -04:00
2022-10-03 19:39:31 -04:00
2022-10-10 13:51:07 -04:00
2022-10-29 02:59:59 -04:00
2022-10-26 12:57:32 -04:00
2022-10-26 12:57:32 -04:00
2022-09-24 13:57:58 -04:00
2022-10-26 17:27:00 -04:00
2022-10-26 17:27:00 -04:00
2022-10-28 15:38:42 -04:00
2022-10-20 10:21:52 -04:00
2022-10-26 10:54:33 -04:00
2022-09-28 21:40:05 -04:00
2022-10-29 03:00:05 -04:00
2022-10-27 13:16:00 -04:00
2022-10-03 20:37:45 -04:00
2022-10-27 07:14:20 -04:00
2022-09-24 13:57:58 -04:00
2022-09-24 13:57:58 -04:00
2022-10-28 01:03:21 -04:00
2022-10-21 06:51:20 -04:00
2022-10-28 15:38:42 -04:00
2022-10-24 10:39:09 -04:00
2022-09-24 13:57:58 -04:00
2022-10-31 20:02:27 -04:00
2022-10-31 20:02:27 -04:00
2022-10-31 20:02:27 -04:00
2022-10-14 17:52:37 -04:00
2022-10-24 08:59:51 -04:00
2022-10-28 15:39:05 -04:00
2022-10-19 22:39:29 -04:00
2022-10-12 11:35:59 -04:00
2022-10-31 14:44:30 -04:00
2022-10-31 14:44:30 -04:00
2022-10-26 17:49:37 -04:00
2022-10-26 16:22:34 -04:00
2022-10-27 13:16:00 -04:00
2022-10-29 02:59:59 -04:00
2022-10-20 10:21:52 -04:00
2022-10-21 06:51:51 -04:00
2022-10-21 08:50:30 -04:00
2022-10-31 18:33:27 -04:00
2022-10-28 05:50:46 -04:00
2022-10-28 15:38:42 -04:00
2022-09-24 13:57:58 -04:00
2022-10-31 14:44:30 -04:00
2022-10-14 22:21:46 -04:00
2022-10-19 23:59:04 -04:00
2022-10-26 23:04:12 -04:00
2022-09-29 20:35:21 -04:00
2022-09-24 13:57:58 -04:00
2022-10-31 18:33:27 -04:00
2022-10-26 13:04:29 -04:00