AI Engine API User Guide (AIE) 2023.2
Loading...
Searching...
No Matches
Initialization

Operations to initialize vectors and accumulators. More...

Overview

Operations to initialize vectors and accumulators.

Functions

template<Elem E, unsigned Elems = native_vector_length_v<E>>
vector< operand_base_type_t< E >, Elems > aie::broadcast (E a)
 Returns a vector whose elements are initialized to the given value.
 
template<Accum Acc, Accum... Accums>
requires ((is_same_accum_v<Acc, Accums> && ...))
auto aie::concat (const Acc &acc, const Accums &...accums) -> accum< typename Acc::value_type, Acc::size() *(1+sizeof...(Accums))>
 Concatenate the contents of all input accumulators into a larger accumulator.
 
template<Vector Vec, Vector... Vectors>
requires ((is_same_vector_v<Vec, Vectors> && ...))
auto aie::concat (const Vec &v, const Vectors &...vectors) -> vector< typename Vec::value_type, Vec::size() *(1+sizeof...(Vectors))>
 Concatenate the contents of all input vectors into a larger vector.
 
template<ElemBaseType T, unsigned Elems = native_vector_length_v<T>>
vector< T, Elems > aie::zeros ()
 Returns a vector whose elements are initialized to zero.
 

Function Documentation

◆ broadcast()

template<Elem E, unsigned Elems = native_vector_length_v<E>>
vector< operand_base_type_t< E >, Elems > aie::broadcast ( a)

Returns a vector whose elements are initialized to the given value.

for (unsigned i = 0; i < Elems; ++i)
out[i] = a;
Template Parameters
E.Element type of the returned vector.
Elems.Size of the vector.
Parameters
aValue. The type must meet Elem.

◆ concat() [1/2]

template<Accum Acc, Accum... Accums>
requires ((is_same_accum_v<Acc, Accums> && ...))
auto aie::concat ( const Acc &  acc,
const Accums &...  accums 
) -> accum<typename Acc::value_type, Acc::size() * (1 + sizeof...(Accums))>

Concatenate the contents of all input accumulators into a larger accumulator.

All input accumulators must have the same type and size.

Parameters
accFirst input accumulator.
accumsRest of input accumulators.

◆ concat() [2/2]

template<Vector Vec, Vector... Vectors>
requires ((is_same_vector_v<Vec, Vectors> && ...))
auto aie::concat ( const Vec &  v,
const Vectors &...  vectors 
) -> vector<typename Vec::value_type, Vec::size() * (1 + sizeof...(Vectors))>

Concatenate the contents of all input vectors into a larger vector.

All input vectors must have the same type and size.

Parameters
vFirst input vector.
vectorsRest of input vectors.

◆ zeros()

template<ElemBaseType T, unsigned Elems = native_vector_length_v<T>>
vector< T, Elems > aie::zeros ( )

Returns a vector whose elements are initialized to zero.

for (unsigned i = 0; i < Elems; ++i)
out[i] = 0;
Template Parameters
E.Element type of the returned vector.
Elems.Size of the vector.