std::experimental::simd - cppreference.com

From cppreference.com

template< class T, class Abi = simd_abi::compatible<T> > class simd;

(parallelism TS v2)

The class template simd is a data-parallel type. The width of a given simd instantiation is a constant expression, determined by the template parameters.

An ABI tag is a type in the simd_abi namespace that indicates a choice of size and binary representation for objects of data-parallel type.

Template parameters

T - element type; an arithmetic type other than bool
Abi - tag type used to determine the number of elements and storage

Helper alias templates

template< class T, int N > using fixed_size_simd = std::experimental::simd<T, std::experimental::simd_abi::fixed_size<N>>;

template< class T > using native_simd = std::experimental::simd<T, std::experimental::simd_abi::native<T>>;

Member types

Member type Definition
value_type T
reference implementation-defined
mask_type simd_mask<T, Abi>
abi_type Abi

Member functions

(parallelism TS v2)

constructs a simd object
(public member function) [edit]

(parallelism TS v2)

loads simd elements from contiguous memory
(public member function) [edit]

(parallelism TS v2)

stores simd elements to contiguous memory
(public member function) [edit]

(parallelism TS v2)

accesses specified element
(public member function) [edit]

(parallelism TS v2)

element-wise increment and decrement
(public member function) [edit]
element-wise unary operators
(public member function) [edit]

[static] (parallelism TS v2)

returns the width / number of elements
(public static member function) [edit]

Non-member functions

Example

See also

data-parallel type with the element type bool
(class template) [edit]
numeric arrays, array masks and array slices
(class template) [edit]