Repository navigation
fix(agc): defer unrouted vertex barriers - #6150
Conversation
446c959 to
1c92a11
Compare
|
Other open pull requests touch the same code. Merging one will break the other, or both implement the same thing. If this one builds on them, list them in Depends on.
Some comparisons could not be completed because a pull request conflicts with the base branch. Review these shared files manually before concluding that there is no overlap.
|
|
Tested on Linux (Arch), This PR does not compile on current
Most likely cause: the PR is based on 4bdfc9c, before 54f5c41 ("perf(agc): free a registered shader's decoded program once it is planned") moved the decoded program out of Suggested fix: rebase and read AI-assisted: yes |
1c92a11 to
ded05f5
Compare
|
Re-tested on Linux (Arch), The compile error from my earlier report is gone. The merge is clean, and AGC tests ( AI-assisted: yes |
|
Windows NVIDIA run, since the description lists Linux only. Windows 11 Pro 26200, NVIDIA GeForce RTX 4080 (driver 617.42), AMD Ryzen 7 5800X, WinLibs GCC 15.2.0 r7, Ninja, Release, bundled dependencies,
No title run. AI-assisted: yes (runs done with Claude Code). |
What
s_barrierwhileVGT_SHADER_STAGES_ENrouting is still unset.This progresses Marvel's Wolverine (PPSA03671), Game bring-up #5516. That report has 131 registered shaders failing with:
stage=1 opcode=Barrier reason=s_barrier in a vertex program that accesses LDS or GDS or writes memory is not implementedThe regression registers a type-2 shader with an LDS write plus
s_barrier, then resolves it with the Wolverine GS_FAST_LAUNCH state already supported by #4702 (VGT_SHADER_STAGES_EN=0x482030, point list,GE_CNTL=0x201). On unmodified main, registration prepares it as a Vertex shader and hits the barrier error. With this change, registration defers until draw routing is available and the same program resolves through the mesh/workgroup path.Tested
Linux Mint 22.3, x86_64, NVIDIA GeForce RTX 2050, driver 595.99.02.
git diff HEAD^ --check— passedpython3 tools/check_conventions.py --base origin/main— passedagc_driver— passedagc_driver_graphics— passedagc_driver_mesh— passed on GPUagc_driver_prepared_shaders_registered_workgroup— passedagc_driver_prepared_shaders_registered_workgroup_sync— passedagc_vertex_barrier— passedpython3 tools/pr_overlap.py --base main --branch basil/wolverine-barrier --repo boykopovar/AnyPS5— no overlap with open pull requestsctest --test-dir build-wolverine-final --output-on-failure -j2— 1216/1216 passed, 12 skippedPPSA03671 is not present on this machine, so the title itself was not run locally. The title-side failure is from Game bring-up #5516; the regression reproduces the registration-to-fast-launch path with the same routing state.
Checklist
main; no other open PR implements the same functionsNotImplemented_nid_no_patch); silent stubs are listed under Silent stubs in their library's technical debt file.mdfiles or images added to the repository (attach them to this PR)