Repository navigation
ArcRunner (PPSA21406) #10261
JJenkx
started this conversation in
Game bring-up
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Existing thread
Title
ArcRunner (PPSA21406)
Content version tested
01.001.000, from
sce_sys/param.json. Unreal Engine 4 title. The dump has nosce_sys/playgo-chunk.datorplaygo-scenario.json.AnyPS5 commit
0db47b263d+ fix(libkernel): skip unallocated pages in sceKernelReleaseDirectMemory #10018 (3b1e7757dc). fix(libkernel): skip unallocated pages in sceKernelReleaseDirectMemory #10018 changes onlysceKernelReleaseDirectMemory; it is not needed for this title as far as seen.17ae5cc23e).System tested
Arch Linux, Ryzen 9 7950X, Radeon RX 6650 XT (RADV NAVI23), Mesa 26.2.4, Linux 7.2.9. Release build.
Furthest point
Intro cutscene of a new game: the save-slot menu, the opening dialogue ("What happened... where am I?") and the rendered 3D street scene with the police car. Too slow to play.
What is shown
Startup needs a PlayGo answer. Without one, the title aborts at about 28 s:
With
APS5_PLAYGO_UNLISTED_CHUNKS=installed, which is correct for a complete dump, the title gets through startup and the menus.On main the frame rate is about 0.4 FPS. Three host imports fail at
vkAllocateMemorywithVK_ERROR_INVALID_EXTERNAL_HANDLE(-1000072003), and the host import budget is lowered to what is live:By the end of a 300 s run, 834k imports had been refused, and the driver copies those ranges instead.
With fix(agc): lower import budgets only on memory exhaustion #8091 the frame rate is about 2.4 FPS. The budget is no longer lowered: 14,584 imports were made in a 300 s run. 3,750 still fail with the same error, each range once (no retries). This is the same issue as in Absolum (Absolum (PPSA28311) #7373), where fix(agc): lower import budgets only on memory exhaustion #8091 took gameplay from 82 ms to 20.6 ms a frame.
Where the time goes with fix(agc): lower import budgets only on memory exhaustion #8091. A 20 s
APS5_TRACE_SECONDS=200:20capture in the intro cutscene gives:Resources.Complete(437 ms per frame inclusive);Driver.Packet.memory_wait, 400-490 ms per frame.A
perfsample of the driver threads is spread over page faults on mapped GPU memory (vmf_insert_pfn_prot) andGuestMemory::WriteChanged, with no single hotspot. A guest thread also spins insched_yield, which looks like the title waiting for the GPU.This capture is diagnostic only. The log was redirected, so it is not a performance report.
Current blocker
Speed. Two things to look at:
Resources.CompleteandDriver.Packet.memory_wait.No crash was seen in 300 s.
How it was run
libsandrelinkerfrom the pinned commit.eboot.binand the modules insce_moduleandprxwithtools/unwrap_self.py. The relinker searchesprx/by default.app0:Input: Cross every 30 s from 40 s.
The relinker reports 331 imports from
EOSSDK-PS5-Shipping.debug_prxas absent. Absolum has the same kind of EOSSDK gap and runs; no failure from them was seen here.Not verified
AI-assisted: yes (Claude Code)
All reactions