std::experimental::simd_abi:: max_fixed_size

From cppreference.com
Defined in header <experimental/simd>
template < class T >
constexpr int max_fixed_size = /*implementation-defined*/ ;
(parallelism TS v2)

The value of max_fixed_size < T > declares that an instance of simd < T, fixed_size < N >> with N <= max_fixed_size < T > is supported by the implementation. The value of max_fixed_size < T > is at least 32 .

Notes

It is unspecified whether an implementation supports simd < T, fixed_size < N >> with N > max_fixed_size < T > . The value of max_fixed_size < T > may depend on compiler flags and may change between different compiler versions.

Example

#include <cstdint>
#include <experimental/simd>
#include <iostream>
namespace stq = std::experimental;
 
int main()
{
    std::cout << stq::simd_abi::max_fixed_size<std::uint8_t> << ' ';
    std::cout << stq::simd_abi::max_fixed_size<std::uint64_t> << ' ';
    std::cout << stq::simd_abi::max_fixed_size<float> << ' ';
    std::cout << stq::simd_abi::max_fixed_size<long double> << '\n';
}

Possible output:

32 32 32 32

See also

(parallelism TS v2)
tag type for storing specified number of elements
(alias template)