`@rocprintf` assumes uniformity
Nobody has claimed this yet.
- Dominant language
- Julia
- Stars
- 344
- Forks
- 79
- Avg merge
- 2d 23h
- Merged PRs (30d)
- 27
Description
Right now, @rocprintf assumes that all lanes are executing it in lockstep, and that all lanes in the workgroup will execute it. We can't reliably make this assumption in all cases, but should instead expose uniformity as an option to @rocprintf, and default to assuming non-uniformity of execution. In the non-uniform case, we may end up with more separate print calls as lanes and wavefronts hit divergent code paths.
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 by locating the @rocprintf entry point and understanding how it currently handles lane and workgroup execution. Define the uniform and non-uniform option behavior, then verify that non-uniform execution does not rely on lockstep assumptions and that divergent paths can produce separate print calls.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- julia
- Domain
- hpc
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100