Fix is_address_from verifier error on CUDA below 13.1 - #11020
Conversation
|
Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually. Contributors can view more details about this message here. |
|
/ok to test |
😬 CI Workflow Results🟥 Finished in 4h 48m: Pass: 86%/183 | Total: 7d 18h | Max: 4h 47m | Hits: 35%/2077090See results here. AI failure analysis1. libcu++ address-space fallback triggers NVVM register-width failure · 21 jobsExplanation: The PR expands the inline-PTX address-space fallback from CUDA versions below 12.3 to versions below 13.1. Every CUDA 12.9/13.0 configuration then fails memcpy_async and pipeline compilation with an NVVM register-width diagnostic, sometimes followed by a compiler crash, indicating that an `isspacep` asm operand is reaching NVVM with a width incompatible with its `"l"` constraint. Evidence: Copy this prompt into a coding agentJobs:
2. cuML device_scalar initialization calls deleted rvalue constructor · 1 jobExplanation: RMM 26.10 deletes construction of `device_scalar` from a temporary value, while cuML initializes several scalars directly from literals such as `0`, `1.0`, and `0.0`. Overload resolution therefore selects the deleted rvalue overload in the UMAP and solver sources. Evidence: Copy this prompt into a coding agentJobs: 3. cuGraph device_scalar initialization calls deleted rvalue constructor · 1 jobExplanation: cuGraph repeatedly constructs RMM device scalars from temporary `size_t{0}` values, but RMM 26.10 explicitly deletes the corresponding rvalue constructor. The same incompatibility appears across many instantiations of `edge_partition_device_view.cuh` and related cuGraph primitives. Evidence: Copy this prompt into a coding agentJobs: 4. CUDA 13.3 ptxas memory allocation failure · 4 jobsExplanation: Four CUDA 13.3 Windows jobs fail in varying atomics tests because ptxas cannot allocate memory, without a source-level compiler diagnostic. The varying test sets and common assembler message indicate runner resource exhaustion or excessive concurrent assembly rather than the address-space code regression. Evidence: Copy this prompt into a coding agentJobs: |
Description
This PR fixes a CUDA 12.9 + GCC 10 CI failure uncovered by #10688, which added
cuda::barrier/memcpy_asyncto thefixed_capacity_mapref and with them acuda::device::is_address_from(ptr, shared)check. On CTK 12.9 + GCC 10,is_address_from(ptr, shared)lowers::__isSharedto@llvm.nvvm.isspacep.sharedwith the caller's typed pointer instead ofi8*, so the LLVM verifier aborts.The
localcase already works around this at< 13.1. Theglobal/constant/shared/cluster_sharedcases were left at< 12.3. Fix: bump those four to< 13.1so they use the inline-PTXisspaceppath below 13.1, matchinglocal.Checklist