Arcane  4.1.12.0
User documentation
Loading...
Searching...
No Matches
Arcane::AVXSimdX8Int32 Class Reference

Vectorization of Int32 integers using AVX. More...

#include <arcane/utils/SimdAVX.h>

Public Types

enum  { Length = 8 , Alignment = 32 }

Public Member Functions

 AVXSimdX8Int32 (__m256i _v0)
 AVXSimdX8Int32 (Int32 a)
 AVXSimdX8Int32 (const Int32 *base, const Int32 *idx)
 AVXSimdX8Int32 (const Int32 *base)
Int32 operator[] (Integer i) const
Int32operator[] (Integer i)
void set (ARCANE_RESTRICT Int32 *base, const ARCANE_RESTRICT Int32 *idx) const
void set (ARCANE_RESTRICT Int32 *base) const
void load (const AVXSimdX8Int32 *base)

Static Public Member Functions

static AVXSimdX8Int32 fromScalar (Int32 a0, Int32 a1, Int32 a2, Int32 a3, Int32 a4, Int32 a5, Int32 a6, Int32 a7)

Public Attributes

__m256i v0

Static Public Attributes

static const int BLOCK_SIZE = 8

Detailed Description

Vectorization of Int32 integers using AVX.

Definition at line 46 of file SimdAVX.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum

Definition at line 51 of file SimdAVX.h.

Constructor & Destructor Documentation

◆ AVXSimdX8Int32() [1/5]

Arcane::AVXSimdX8Int32::AVXSimdX8Int32 ( )
inline

Definition at line 60 of file SimdAVX.h.

◆ AVXSimdX8Int32() [2/5]

Arcane::AVXSimdX8Int32::AVXSimdX8Int32 ( __m256i _v0)
inline

Definition at line 61 of file SimdAVX.h.

◆ AVXSimdX8Int32() [3/5]

Arcane::AVXSimdX8Int32::AVXSimdX8Int32 ( Int32 a)
inlineexplicit

Definition at line 64 of file SimdAVX.h.

◆ AVXSimdX8Int32() [4/5]

Arcane::AVXSimdX8Int32::AVXSimdX8Int32 ( const Int32 * base,
const Int32 * idx )
inline

Definition at line 76 of file SimdAVX.h.

◆ AVXSimdX8Int32() [5/5]

Arcane::AVXSimdX8Int32::AVXSimdX8Int32 ( const Int32 * base)
inlineexplicit

Definition at line 80 of file SimdAVX.h.

Member Function Documentation

◆ fromScalar()

AVXSimdX8Int32 Arcane::AVXSimdX8Int32::fromScalar ( Int32 a0,
Int32 a1,
Int32 a2,
Int32 a3,
Int32 a4,
Int32 a5,
Int32 a6,
Int32 a7 )
inlinestatic

Definition at line 110 of file SimdAVX.h.

◆ load()

void Arcane::AVXSimdX8Int32::load ( const AVXSimdX8Int32 * base)
inline

Definition at line 105 of file SimdAVX.h.

◆ operator[]() [1/2]

Int32 & Arcane::AVXSimdX8Int32::operator[] ( Integer i)
inline

Definition at line 85 of file SimdAVX.h.

◆ operator[]() [2/2]

Int32 Arcane::AVXSimdX8Int32::operator[] ( Integer i) const
inline

Definition at line 84 of file SimdAVX.h.

◆ set() [1/2]

void Arcane::AVXSimdX8Int32::set ( ARCANE_RESTRICT Int32 * base) const
inline

Definition at line 100 of file SimdAVX.h.

◆ set() [2/2]

void Arcane::AVXSimdX8Int32::set ( ARCANE_RESTRICT Int32 * base,
const ARCANE_RESTRICT Int32 * idx ) const
inline

Definition at line 87 of file SimdAVX.h.

Member Data Documentation

◆ BLOCK_SIZE

const int Arcane::AVXSimdX8Int32::BLOCK_SIZE = 8
static

Definition at line 50 of file SimdAVX.h.

◆ v0

__m256i Arcane::AVXSimdX8Int32::v0

Definition at line 59 of file SimdAVX.h.


The documentation for this class was generated from the following file: