NVIDIA / NVIDIA/cccl

Explicitly document synchronization requirements in Warp-level APIs

Open
#853 1 comment 2 reactions 0 assignees View on GitHub
cub
Dominant language
C++
Stars
2.5k
Forks
487
Avg merge
2d 7h
Merged PRs (30d)
296

Description

For all warp-based cub api, say warpscan, the example given by the document do not use __syncwarp to sync threads within a warp.

However, it seems that in volta, threads within a warp are no longer synchronized naturally and seems __syncwarp is required before and after warp-based communication.

So, need I use __syncwarp for warpscan just like use __syncthreads in blockscan?

Thanks!

Contributor guide

Open the contributing guide

Research direction

Review the documentation and examples for the warp-based CUB APIs mentioned, including WarpScan, and determine the synchronization requirements on Volta and later architectures. Done means the affected API documentation explicitly states whether __syncwarp is required before or after warp-based communication, with examples updated consistently.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
documentation
Issue type
Documentation
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.