You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
test(agc): wait for neighbour image result - #6396
The NeighbourCopied fixture previously returned Missed as soon as FindLive found an image while AnyPending() was false. That can observe the image before this store's pending result is registered. It now waits for the live image returned for this address to be the pending image, or for the stored value to reach guest memory before reporting Missed.
Addresses the intermittent fixture failure in #6383. This is separate from #6359's RunSecondStore wait: the changes are in different branches of the same test file and do not depend on each other.
Tested
Linux x86-64, GCC 12.2:
agc_driver_store_over_untracked_tests compiled and linked. The build needed a temporary, local dependent-template qualifier in unrelated SrtDescriptorEvaluation.cpp for GCC 12; that workaround was removed before commit. The unrelated source issue is already covered by fix(shader): qualify SRT memory flags template #6306.
ctest --test-dir build -R '^agc_driver_store_over_untracked$' --output-on-failure could not reach the test logic: the host CPU (Intel Xeon E5-1620 v2) lacks LZCNT, BMI1, BMI2, MOVBE, AVX2 and FMA, which the runtime requires.
python3 tools/check_conventions.py --base upstream/main and git diff --check pass.
No GPU runtime result is claimed.
Checklist
Based on current main; no other open PR implements the same behavior
One topic per PR; follow-ups go in a new pull request
No comments in code except technical debt
Unimplemented paths throw
No notes, investigation .md files or images added to the repository
New third-party code is a submodule built from source
Generic behavior, not specific to one title
Depends on: none
Unblocks: none
GPUs tested: none; local runtime is blocked by the host CPU feature check
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.
The new 100-run RTX 4080 comparison in #6383 shows this predicate is insufficient: #6396 still misses 4/100, while #6385 passes 100/100. The fixture condition should wait for a live image with pending work or for the stored bytes to reach guest memory; #6385 implements that and has direct hardware validation. I am closing #6396 in favor of #6385 to avoid keeping a weaker duplicate open. Thanks to @Neithennn and @kid9 for the reproducible comparison and diagnosis.
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
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
The
NeighbourCopiedfixture previously returnedMissedas soon asFindLivefound an image whileAnyPending()was false. That can observe the image before this store's pending result is registered. It now waits for the live image returned for this address to be the pending image, or for the stored value to reach guest memory before reportingMissed.Addresses the intermittent fixture failure in #6383. This is separate from #6359's
RunSecondStorewait: the changes are in different branches of the same test file and do not depend on each other.Tested
Linux x86-64, GCC 12.2:
agc_driver_store_over_untracked_testscompiled and linked. The build needed a temporary, local dependent-template qualifier in unrelatedSrtDescriptorEvaluation.cppfor GCC 12; that workaround was removed before commit. The unrelated source issue is already covered by fix(shader): qualify SRT memory flags template #6306.ctest --test-dir build -R '^agc_driver_store_over_untracked$' --output-on-failurecould not reach the test logic: the host CPU (Intel Xeon E5-1620 v2) lacks LZCNT, BMI1, BMI2, MOVBE, AVX2 and FMA, which the runtime requires.python3 tools/check_conventions.py --base upstream/mainandgit diff --checkpass.Checklist
main; no other open PR implements the same behavior.mdfiles or images added to the repository