Forward progress: questioning `weakly_parallel` guarantee of stream scheduler
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 2.4k
- Forks
- 270
- Avg merge
- 3d 6h
- Merged PRs (30d)
- 39
Description
We are wondering why the stream scheduler advertises its forward progress guarantee as weakly_parallel:
Indeed, this page on the Cuda execution model,
https://nvidia.github.io/cccl/libcudacxx/extended_api/execution_model.html
mentions that
If the host implementation provides concurrent forward progress, then CUDA C++ provides parallel forward progress for device threads.
As potential reasons for the stream scheduler advertising only weakly_parallel, we have thought about the host implementation not necessarily providing concurrent forward progress and about the cuda architecture not necessarily providing independent thread scheduling prior to volta. But we are not sure. And so hence our question.
Also noting that we did see the same forward progress guarantee used in the new work in cudax.
Thanks in advance!
Joint work with @romintomasetti.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with include/nvexec/stream_context.cuh at lines 47-49 and read the linked CUDA execution model documentation, focusing on the conditions for parallel forward progress. Compare that explanation with the stream scheduler and the same guarantee in cudax. Done means the guarantee is clarified or the relevant documentation and declarations are updated.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- backend-api-design
- Issue type
- Documentation
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 32/100