kokkos / kokkos/mdspan

submdspan overloads using std::pair are marked as device-usable

Open Beginner friendly
#461 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C++
Stars
507
Forks
87
Avg merge
15h 27m
Merged PRs (30d)
2

Description

Cuda 13.3.0 + C++23 complains about submdspan overloads with std::pair arguments since the constructor has MDSPAN_INLINE_FUNCTION annotations, see https://github.com/kokkos/mdspan/blob/cae4a4e4f3e399b3edc7066596b0b6b7b063423f/include/experimental/__p2630_bits/submdspan.hpp#L24-L29.
Also see https://github.com/kokkos/kokkos/issues/9333.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start in include/experimental/__p2630_bits/submdspan.hpp at lines 24–29 and inspect the std::pair-related overloads and their MDSPAN_INLINE_FUNCTION annotations. Reproduce the diagnostic with CUDA 13.3.0 and C++23, then verify that the submdspan overloads no longer produce the reported device-usable error.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
compilers
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
68/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.