Fix CQR surface-code test to use Relay-BP#691
Merged
vedika-saravanan merged 4 commits intoJul 14, 2026
Conversation
Signed-off-by: vedika-saravanan <vsaravanan@nvidia.com>
bmhowe23
reviewed
Jul 13, 2026
Signed-off-by: vedika-saravanan <vsaravanan@nvidia.com>
vedika-saravanan
marked this pull request as ready for review
July 14, 2026 00:02
bmhowe23
reviewed
Jul 14, 2026
Signed-off-by: vedika-saravanan <vsaravanan@nvidia.com>
bmhowe23
approved these changes
Jul 14, 2026
bmhowe23
left a comment
Collaborator
There was a problem hiding this comment.
If this passes the GitHub CI, this LGTM ... thanks!
vedika-saravanan
enabled auto-merge (squash)
July 14, 2026 00:41
bmhowe23
added a commit
to bmhowe23/cudaqx
that referenced
this pull request
Jul 15, 2026
…ridge branch Main landed the squashed PR 670 plus NVIDIA#656/NVIDIA#673/NVIDIA#674/NVIDIA#678/NVIDIA#680/NVIDIA#683/NVIDIA#688/ NVIDIA#690/NVIDIA#691/NVIDIA#692. Resolution keeps this branch's design and ports main's content into it: - Naming: main's GpuRoce{Transceiver,Factory,LinkCheck} map 1:1 onto this branch's DeviceGraph* files (the de-transport-ing follow-up requested in the PR 670 review). Main's post-review fixes are ported into the renamed files: ring-size overflow + host-page-size alignment validation, gpu_id resolved from the decoder's cuda_device_id instead of an env var, the factory taking pinned_cuda_device, and the linkcheck exercising the new factory signature. - Schema: per-decoder 'dispatch: host|device_graph' plus the top-level transport section stay; main's per-decoder 'transport:' key does not return. cuda_device_id is adopted as a per-decoder placement knob (config struct + YAML trait), and the hsb script now injects 'dispatch: device_graph' + cuda_device_id and drives the server with QEC_DEVICE_GRAPH_* env and the device_graph READY sentinel. - Features adopted from main: decoder CUDA-device pinning (worker-thread pin via promise, graph-capture pin, hardware_guards.h), per-session decode counters + print_session_stats + QEC_DECODING_SERVER_STATS server-side stats printing, DecodingServer ctor exception safety, virtualized realtime decoder API (NVIDIA#674), CMP0126 fix, CUDA::cudart on the core lib, and the cudevice-archive dedup in the server link. - DecodingSession combines main's set_graph_capture_device with this branch's reserved-SMs decode-graph capture (QEC_DEVICE_GRAPH_RESERVED_SMS). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Signed-off-by: Ben Howe <bhowe@nvidia.com>
anjbur
added a commit
to anjbur/cudaqx
that referenced
this pull request
Jul 16, 2026
This reverts commit 6c688b5. Signed-off-by: Angela Burton <angelab@nvidia.com>
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.
Description
Fixes
app_examples.surface_code-1-cqr-test-distance-3for the CQR host-dispatch path whennv-qldpc-decoderis used with device-call decoding.The test already set
CUDAQ_DEVICE_CALL_CHANNEL=host_dispatch, but the nv-qldpc device-call path now requires Relay-BP (composition=1). This PR:EXTRA_CLI_ARGS=--use-relay-bpfor the CQR surface-code test when both the proprietary cudevice target and external decoder support are available$EXTRA_CLI_ARGSthrough the syndrome save/load phase, so--save_syndromeand--load_syndromeuse the same decoder configuration as the main test pathValidated locally in Docker:
cudaq-qec-nv-qldpc-decoderandcudaq-qec-realtime-cudevice-proprietary: targeted CQR test passed with--use-relay-bp,nv-qldpc-decoder, and syndrome replay verificationRuntime / performance impact
N/A. Test-only change.
Self-review checklist
Please confirm each item before requesting review. Check
[x]or strikethrough and explain.
Before requesting review
Scope and size
(if so, an issue has been raised).
Tests
just when it is missing.
Negative tests added where exceptions are expected.N/A; no new exception path.Truth data added where simpleN/A; existing syndrome replay verification covers this path.EXPECT_*/assertchecks areinsufficient for algorithmic correctness.
Documentation
Public-facing APIs have Doxygen docs.N/A; no API changes.User-visible behavior changes have public docs, or a follow-up isN/A; test-only change.tracked.
Code style
snake_casevscamelCase) forthe area being modified.
Dependencies
OSRB tickets filed.