AnyPS5/core/libs
raghav314 024cb1feda perf(agc): cache resources whose only completion work is the fault check
A draw or dispatch whose shaders have guarded descriptor slots (or a rect
list) but no BDA table gets a fault buffer, and with it NeedsCompletion(),
which kept its resources out of the resource cache, and NeverReusable
skipped the cache lookup for it. In PPSA36082 nearly every draw in the hub
is such a build, so the cache served none of them.

Such an object has no table to revalidate, no stores through BDA and no
copied writes, so it is now reusable. Each use of a reused object checks
the fault record when its batch completes (CheckFaults) instead of
running the once-only write-back; draw recipes over such a template
register the same check, and dispatch recipes still skip templates with
completion work. NeverReusable now refuses what noteReusable refuses: a
BDA table, or a fault buffer with APS5_LOOP_GUARD set (its fault resets
the buffer).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-11 09:15:53 +02:00
..
nid feat(nid): patch NIDs in Mach-O libraries 2026-10-09 15:40:29 +03:00
prx perf(agc): cache resources whose only completion work is the fault check 2026-10-11 09:15:53 +02:00
tests Merge pull request #3160 from babyhuey/feat/libkernel-sys-fork 2026-10-11 09:14:48 +02:00
CMakeLists.txt Merge pull request #3214 from fma-rc/fix/libs-bind-now 2026-10-11 19:35:33 +13:00
HitLog.hpp style(prx): apply CONVENTIONS.md to misc PRX additions 2026-09-29 04:24:39 +03:00
SceShaders.hpp
…
SceTypes.hpp feat(libkernel): implement sceKernelGetModuleInfo 2026-10-09 19:39:49 -04:00