Repository navigation
Conversation
… a check fails The checks over the watched units passed each word to Require with a message built from std::to_string and, for the stored results, the unit summary, so every passing word paid for a string. Build the message only when the check fails; the checks themselves are unchanged. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Contributor
|
Windows check of head Setup: Windows 11 Enterprise 22621, WinLibs GCC 15.2 UCRT, Release, Radeon RX 6700 XT, AMD driver 26.10.1, run with
AI-assisted: yes. |
Contributor
✅ NVIDIA GPU test: passedPR head
Failing on main too (1, not counted against this PR)Validation IDs already present on main (9 IDs in 466 tests)Skipped (4)ReproduceAutomated build and test on a contributor's NVIDIA machine; it does not replace upstream CI. A new comment is posted for each new push. Full logs. |
This branch has not been deployed
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
agc_storage_pending_after_unwatchtakes about 10 s under ASan and UBSan, andagc_driver_recorder, which runs the same checks in its full pass, went from under 10 s to the 30 s limit in the sanitizer runs since #10026 added them. Most of that time is spent building failure messages that are never used: the checks over the watched units pass each word toRequirewith a message assembled fromstd::to_stringand, for the stored results, the per-unit summary, so every passing word pays for a string. The message is now built only when the check fails; the checks themselves and what they cover are unchanged. CONTRIBUTING asks to shrink a test that gets close to the limit instead of raising its timeout. #15441 raises the timeout ofagc_driver_recorderto 120 s in ASan builds; with this change the test takes about 6.7 s instead of 16 to 17 s under ASan on the machine below, so #15441 would remain only as a reserve. Whether it is still needed is for the reviewers.Tested
Ubuntu 24.04 under WSL2, GCC 13.3.0, configured as
sanitizers.ymldoes (Release,ANYPS5_ENABLE_ASAN=ON,-fsanitize=undefined -fno-sanitize=vptr, sameASAN_OPTIONSandUBSAN_OPTIONS), three runs each onmain1e24993fa3and on this change on the samemain:mainagc_storage_pending_after_unwatchagc_driver_recorderAll runs passed.
tools/check_conventions.py --base upstream/mainpasses.Overlap: all 1827 open pull requests were checked on 2026-11-05 at 09:30 UTC against
main7ad9749ed0; 56 changetests/Recorder.cpp. 23 merge with and without this change without a conflict, 33 already conflict withmainwithout it, and none conflicts because of this change; none changespendingAfterLeavingWatchTests.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)AI-assisted (Claude Code).
🤖 Generated with Claude Code