Skip to content

Function shufflegroups

function shufflegroups(const vec<T, N> &, const vec<T, N> &, elements_t<Indices...>) simd

template <size_t group, size_t... Indices, typename T, size_t N, size_t count = sizeof...(Indices)>
KFR_INTRINSIC vec<T, N> shufflegroups(const vec<T, N>& x, const vec<T, N>& y,
                                      elements_t<Indices...> i = elements_t<Indices...>())

Group-wise variant of shuffle() that operates on blocks of group elements.

Same as shuffle() but the index pattern is applied per group of group consecutive lanes rather than per single lane.

Template parameters
group Number of lanes in each group.
Indices Compile-time index list defining the per-tile source selection.
T Element type of the vectors.
N Length of each input vector.
count Number of indices in Indices.
Parameters
x First source vector.
y Second source vector.
i Index pattern selector.
Returns
A vector of length N drawn from the concatenated sequence, shuffled by group.

Fully qualified name: kfr::shufflegroups(const vec<T, N> &, const vec<T, N> &, elements_t<Indices...>)

Declared at simd/shuffle.hpp:738

This file was generated by cxxdox, a C++ documentation generator based on MkDocs Material and libclang.