NVIDIA / NVIDIA/cccl

[BUG]: cudax test failures on MSVC: vector_add wrong result; stdexec_stream segfault

Open
#8,902 0 comments 0 reactions 0 assignees View on GitHub
bug
Dominant language
C++
Stars
2.5k
Forks
486
Avg merge
2d 6h
Merged PRs (30d)
295

Description

### Type of Bug
Runtime Error

### Component
CUDA Experimental (cudax)

### Describe the bug

Two cudax example-based tests fail at runtime on Windows + MSVC with CTK 13.X. Builds succeed; failures are runtime-only.

| Test | Symptom |
|---|---|
| `vector_add` | Returns wrong result at element 0 (mismatch reported against `A[0]+B[0]`) |
| `stdexec_stream` | SegFault during the `schedule \| then \| bulk \| continues_on \| sync_wait` chain |

Static analysis of `cudax/examples/vector_add.cu`, `cudax/examples/stdexec_stream.cu`, and `cudax/examples/vector.cuh` did not surface an obvious bug. The failure pattern (different modes on the same configurations, both runtime-only, build clean) points to a Windows + CTK 13.X + cudax-internal interaction that needs a real repro by the cudax team.

Discovered while enabling cudax MSVC GPU jobs in #5725. cudax tests are currently excluded on MSVC in that PR to unblock it; this issue tracks re-enabling them after the underlying failures are fixed.

### How to Reproduce

Branch with an override matrix that runs only the failing jobs: `NVIDIA/cccl:bug/cudax_msvc_tests` (#8903).

Local repro on a Windows host with CTK 13.X + MSVC:
1. Check out the branch above.
2. Configure cudax with MSVC + std=20.
3. Build and run `cudax.cpp20.example.vector_add` and `cudax.cpp20.example.stdexec_stream`.

CI on the linked PR runs the two affected jobs across all available Windows GPUs (a100, h100, l4, rtx2080, rtx4090, rtxa6000), so CI logs can be used as the reference repro.

### Expected behavior

Both tests pass on MSVC + CTK 13.X across the supported Windows GPUs, matching their behavior on Linux toolchains.

### Operating System

Windows (CI runner image)

### NVCC version

CTK 13.X (CTK 13.2 specifically observed in CI)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.