Skip to main content

wave_reduce_and

Function wave_reduce_and 

Source
pub fn wave_reduce_and<const STRATEGY: u32>(value: u32) -> u32
🔬This is a nightly-only experimental API. (stdarch_amdgpu #149988)
Available on AMD GPU only.
Expand description

Performs a logical and reduction on the unsigned values provided by each lane in the wavefront.

The STRATEGY argument is a hint for the reduction strategy.

  • 0: Target default preference
  • 1: Iterative strategy
  • 2: DPP

If target does not support the DPP operations (e.g. gfx6/7), reduction will be performed using default iterative strategy.

This intrinsic does not behave like a normal function call; it is a “convergent” operation and as such has non-standard control-flow effects which need special treatment by the language. Rust currently does not properly support convergent operations. This operation is hence provided on a best-effort basis. Using it may result in incorrect code under some circumstances.