A stale storage snapshot is revalidated by comparing every tracker block stamped since it was taken. A title that binds buffers a dispatch writes in place every frame (the whole declared range stamped, few pages really changed) makes the graphics worker compare gigabytes per second. Compares of 1 MiB or more are now split by block across a small pool of helper threads (hardware threads / 8, from 1 to 4). The compare is memory bound, so the worker's share roughly halves rather than dividing by the thread count. A caller that finds the pool busy compares on its own thread. Results and the patch-in-place rules are unchanged. agc_driver_graphics_tests parallelCompareTests: per-span results on the pool and serial paths, and two threads comparing at once. |
||
|---|---|---|
| .. | ||
| Decoder | ||
| libs | ||
| relinker | ||
| shader/recompiler | ||