AI Engine API User Guide (AIE) 2023.2
Loading...
Searching...
No Matches
utils.hpp File Reference

Utilities exposed to users. More...

Detailed Description

Utilities exposed to users.

#include "aie.hpp"
#include "vector.hpp"
#include <cstdio>
#include <cmath>

Namespaces

namespace  aie
 Base namespace for AIE operations and types.
 
namespace  aie::detail
 

Macros

#define __AIE_API_UTILS__HPP__
 
#define AIE_API_CXX_VERSION   202002L
 

Functions

template<Accum Acc>
requires (!Acc::is_floating_point())
auto aie::detail::get_sub_accum (const Acc &acc, unsigned i)
 
template<typename T , unsigned Elems>
constexpr unsigned aie::detail::largest_valid_vector_size ()
 
template<unsigned N>
void aie::print (const aie::mask< N > &m, bool nl=false, const char *prefix=nullptr)
 Displays the contents of a mask.
 
template<typename C >
requires (Vector<C> || Accum<C>)
void aie::print (const C &c, bool nl=false, const char *prefix=nullptr)
 Displays the contents of a vector or an accumulator.
 
template<RegularAcc Acc>
requires (Acc::is_floating_point())
void aie::detail::print_elem (const Acc &acc, unsigned i)
 
template<RegularAcc Acc>
requires (!Acc::is_floating_point() && !Acc::is_complex())
void aie::detail::print_elem (const Acc &acc, unsigned i)
 
template<RegularAcc Acc>
requires (!Acc::is_floating_point() && Acc::is_complex())
void aie::detail::print_elem (const Acc &acc, unsigned i)
 
template<OverlappingAcc Acc>
requires (Acc::is_complex())
void aie::detail::print_elem (const Acc &acc, unsigned i)
 
template<OverlappingAcc Acc>
requires (!Acc::is_complex())
void aie::detail::print_elem (const Acc &acc, unsigned i, const char *prefix="", const char *suffix=" ")
 
template<typename T , unsigned Elems>
void aie::detail::print_elem (const vector< T, Elems > &v, unsigned i)
 
template<typename T , unsigned Elems>
requires (!detail::is_floating_point_v<T>)
void aie::print_fixed (const aie::vector< T, Elems > &v, int scale, bool nl=false, const char *prefix=nullptr)
 Displays the contents of a vector integers represented as real numbers in fixed point.
 
template<RegularAcc Acc, unsigned memory_bits>
requires (!Acc::is_floating_point())
void aie::detail::print_int_component (const char *acc_ptr, const char *prefix="", const char *suffix="")
 
template<typename Matrix >
requires (Vector<Matrix> || Accum<Matrix>)
void aie::print_matrix (const Matrix &m, unsigned cols, const char *prefix=nullptr)
 Displays the contents of a vector or accumulator, arranged in a matrix layout.
 
template<typename T >
void aie::detail::print_value (const T &e, int scale=0)
 

Macro Definition Documentation

◆ __AIE_API_UTILS__HPP__

#define __AIE_API_UTILS__HPP__

◆ AIE_API_CXX_VERSION

#define AIE_API_CXX_VERSION   202002L