Architecture manipulation¶
xsimd provides an high level description of the instruction sets it manipulates.
The mentionned types are primarily used as template parameters for batch, and when interacting with xsimd::dispatch()
.
-
struct
avx2
: public xsimd::avx¶ - #include <xsimd_avx2_register.hpp>
AVX2 instructions.
Subclassed by xsimd::fma3< avx2 >
-
struct
avx512bw
: public xsimd::avx512dq¶ - #include <xsimd_avx512bw_register.hpp>
AVX512BW instructions.
-
struct
avx512cd
: public xsimd::avx512f¶ - #include <xsimd_avx512cd_register.hpp>
AVX512CD instrutions.
Subclassed by xsimd::avx512dq
-
struct
avx512dq
: public xsimd::avx512cd¶ - #include <xsimd_avx512dq_register.hpp>
AVX512DQ instructions.
Subclassed by xsimd::avx512bw
-
struct
avx512f
: public xsimd::generic¶ - #include <xsimd_avx512f_register.hpp>
AVX512F instructions.
Subclassed by xsimd::avx512cd
-
struct
avx
: public xsimd::generic¶ - #include <xsimd_avx_register.hpp>
AVX instructions.
Subclassed by xsimd::avx2, xsimd::fma3< avx >
-
template<>
structfma3
<avx> : public xsimd::avx¶ - #include <xsimd_fma3_avx_register.hpp>
AVX + FMA instructions.
-
template<>
structfma3
<avx2> : public xsimd::avx2¶ - #include <xsimd_fma3_avx2_register.hpp>
AVX2 + FMA instructions.
-
template<>
structfma3
<sse4_2> : public xsimd::sse4_2¶ - #include <xsimd_fma3_sse_register.hpp>
SSE4.2 + FMA instructions.
-
struct
neon64
: public xsimd::neon¶ - #include <xsimd_neon64_register.hpp>
NEON instructions for arm64.
-
struct
neon
: public xsimd::generic¶ - #include <xsimd_neon_register.hpp>
NEON instructions for arm32.
Subclassed by xsimd::neon64
-
struct
sse2
: public xsimd::generic¶ - #include <xsimd_sse2_register.hpp>
SSE2 instructions.
Subclassed by xsimd::sse3
-
struct
sse3
: public xsimd::sse2¶ - #include <xsimd_sse3_register.hpp>
SSE3 instructions.
Subclassed by xsimd::ssse3
-
struct
sse4_1
: public xsimd::ssse3¶ - #include <xsimd_sse4_1_register.hpp>
SSE4.1 instructions.
Subclassed by xsimd::sse4_2
-
struct
sse4_2
: public xsimd::sse4_1¶ - #include <xsimd_sse4_2_register.hpp>
SSE4.2 instructions.
Subclassed by xsimd::fma3< sse4_2 >, xsimd::fma4
-
struct
ssse3
: public xsimd::sse3¶ - #include <xsimd_ssse3_register.hpp>
SSSE3 instructions.
Subclassed by xsimd::sse4_1
-
template<size_t
Width
>
structsve
: public xsimd::generic¶ - #include <xsimd_sve_register.hpp>
SVE instructions (fixed vector size) for arm64.