Repository navigation
test(agc): connect MSAA sample readback to tiled layouts - #6887
Merged
oneandonlydean merged 4 commits intoOct 21, 2026
Merged
oneandonlydean merged 4 commits into
oneandonlydean merged 4 commits into
Conversation
This was referenced Oct 16, 2026
|
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.
|
12 tasks done
Amoenus
force-pushed
the
codex/test-msaa-reader-retile-main143
branch
from
October 16, 2026 22:37
c4d6d3c to
4a97303
Compare
Amoenus
force-pushed
the
codex/test-msaa-reader-retile-main143
branch
from
October 17, 2026 23:55
4a97303 to
86feedd
Compare
Amoenus
force-pushed
the
codex/test-msaa-reader-retile-main143
branch
from
October 19, 2026 08:54
86feedd to
5beb0c4
Compare
Amoenus
force-pushed
the
codex/test-msaa-reader-retile-main143
branch
from
October 19, 2026 16:07
5beb0c4 to
90d07d5
Compare
Amoenus
force-pushed
the
codex/test-msaa-reader-retile-main143
branch
from
October 21, 2026 14:12
90d07d5 to
b65a553
Compare
12 tasks done
12 tasks done
This was referenced Oct 21, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Connect the shared #6588/#6601 foundations in registered Vulkan tests. #6601 is merged; this remains stacked on #9182. The own two-commit range changes only tests, their shader pattern and registration; the main diff includes the declared parent.
The
agc_driver_multisample_readback_retileandagc_driver_multisample_readback_depth_retilemodes render 129x67, 17-layer, four-sample R32_UINT and D32_SFLOAT images. Actual GPU readback feeds the CPU R_X and Z_X tile helpers, then detile. Each case checks all 587,724 rendered elements, tile padding, outer sentinels, unchanged source bytes, and seven pinned fragment addresses per layout with XOR 0 and 0x8100 (28 reference-point checks). D32 uses 587,724 distinct finite values below 1.0; the fixture and its expected bits use0.125 + (element + 1) / 2^20to avoid clamping the larger surface.The address values reuse #6588's four-byte/four-fragment Addrlib references from pinned AMD Addrlib; they are not new oracle measurements. The tests connect layer/y/x/fragment ordering for both integer and native D32 samples. Native depth/stencil ownership, stencil extraction and HTILE publication remain separate work in #6570. No new title unblock or console measurement is claimed.
Tested
Source refresh — 2026-10-21
Head
b65a553db6, based on main745b3946294a9d79e1177a289482768d6ab88c9a. This supersedes the previous current-head labels in the historical qualification below.agc_driver_multisample_readbackx3,agc_driver_multisample_readback_depthx3,agc_driver_multisample_readback_uploadx3. These pass with no validation errors/warnings.2c4b116da9merges cleanly; this is source review, not a runtime result at that newer pin. Earlier Linux, full-build, hardware-reference and negative-control results retain their original pins. No new title or speed result.Earlier qualification at its recorded pins
**Conventions status — 2026-10-20:** The [older failed job](https://github.com/boykopovar/AnyPS5/actions/runs/39283077729/job/118161347025) reported an empty `Tested` section. The current description and unchanged head `90d07d596e` now pass the full conventions checker from main `83751168dd` (zero findings). Runtime results below retain their original pins; this description update changes no code.Current rebase and validation — 2026-10-19
Head
90d07d596eis transplanted onto refreshed #6965 at9861b0d775, which uses #6588 at945b29a822and maind047690c63. Range-diff marks both own test commits identical to the old3c5ea81361/5beb0c4903patches. Old heads are preserved locally. Only the fixture, its fragment shader and the registration list differ from the qualified parent; no production source changed.The exact new fixture/shader were rebuilt on Windows11 Enterprise26200, WinLibsGCC15.2r7/UCRT Release. Nine modes (the seven readback/upload modes and the two connected retile modes) each pass three fresh processes per actual RTX5080/Radeon Graphics: 54 GPU passes, including12 new retile passes. All requested subcases ran; no whole-test skips, timeouts, VUIDs, validation errors/warnings or missing requested validation layer. Vulkan is required, application shader caching is off and verbose CTest logs verify actual devices and loaded Khronos layers; driver cache is uncontrolled.
The full-default and explicit library/relinker build evidence is reused from parent9861 at its actual pin because production blobs are identical; this head has a fresh selected-target build, not a new full-default-build claim. Conventions/whitespace checks pass. The live PR/fork heads were verified before the exact-lease push; a clean merge with fetched main32004 was checked. Historical Linux/source-oracle/title evidence retains its original pins; no new Linux, title, speed or console result is claimed. AI-assisted: yes (Codex).
Dependency-parent/change comparison: the qualified #6965 parent
9861b0d775passes the commonagc_driver_multisample_readbackgroup3/3 per actual GPU; this head90d07d596epasses the same common mode3/3 per GPU with the same Vulkan/cache/validation settings and zero VUID/errors/warnings. Parent9861 also has all seven readback/upload modes passing3/3 per GPU. These are dependency-parent controls (main d047 + declared CPU-layout/upload stack), not a fresh literal-unmodified-main run.The earlier literal-main
8816fd7720versus old head5beb0c4903comparison remains historical. The new retile registrations do not exist on main and are separately counted as12 capability executions. No performance or complete title-run claim.Earlier validation at its original source pins
Current head
86feedd16201b206a9b77df36bd87b9b3252850dis rebased onto exact #6965 head2f8a4508e27220d62d8955fb8b06a5c743b4e535, incorporating mainbd5856170891c2a148a384eb79b90fe8e9385bb6. Own review scope: two test commits, three files, +68/-5. Both commits replay cleanly; their patches are unchanged. Production code is identical to the declared parent.relinker,libsand reader/upload/retile fixture build on Windows11 Enterprise26200 / WinLibs GCC15.2r7 and Ubuntu24.04 WSL2 / GCC13.3. The old separate Windows build initially lacked the newly required ZArchive/zstd submodules; initializing the repository-pinned submodules restores configuration, then the builds pass. No dependency pin or source workaround was added.cmake --build build --target relinker libs agc_driver_multisample_readback_tests ctest --test-dir build -V -j1 --repeat until-fail:3 --timeout 30 -R '^agc_driver_multisample_readback(_(uint8|uint16|uint64|uint128|depth|upload|retile|depth_retile))?$'No new title unblock, HTILE-completion, performance or console-equivalence claim. The earlier fault controls below retain their original pins.
Earlier validation and controls at original pins
Historical head
c4d6d3cc85e1c6a9018ad5e02dfff10819f795a6, based on main143f13055plus #6588 headf1a733dd5and #6601 head4b24b3ca0:bfae8feb4; its application (relinker) andlibsbuild results are retained at that pin, rather than claimed as fresh full builds.uint8,uint16,uint64,uint128,depth,retileanddepth_retile. Both connected modes execute both layouts/XORs in every repetition. Maximum positive matrix test time: 0.51 s.depth_retilefails atreadback and retile disagree on layer, pixel or fragment order(0.58 s); restoringc4d6d3cc8, rebuilding and rerunning passes. The control changes only bounded host-vector contents after GPU completion.Earlier integer-only validation at its original pins
At
bfae8feb4, application (relinker),libsand reader targets build on both OSes. The connected integer case passes once per NVIDIA/AMD/llvmpipe device with no unavailable subcases, longest 0.414 s. A host layer-order control fails the ordering assertion and restoration passes on RTX 5080. That control uses earlier source-identical fixture7490c0810, whose composition also includes the unrelated #6452 alignment correction; the submitted branch excludes it. The newc4d6d3cc8D32 control above uses the actual submitted composition. Parent oracle comparisons and wider matrices retain their original pins in #6588/#6601.No whole CTest suite, physical-console or title run was performed for this test-only follow-up. Maintainer-dispatched upstream CI remains useful.
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)