Skip to content

host

A simple allocator for STL containers which upholds alignment specifications.

A number of functions are requirements for STL compliance - e.g. allocators compare equal.

Name Description
RuntimeCompiler
VM_Cast_Table
Return Name Description
void(*)(const void **src_ptrs, void *dest_data) ExprKernelFunc The signature for evaluation of lineriazable arrays of single datatypes/layouts.

using ExprKernelFunc = void(*)(const void **src_ptrs, void *dest_data)

The signature for evaluation of lineriazable arrays of single datatypes/layouts.

Return Name Description
DestT vm_cast_logic
void execute_expression_recursive
void scatter_add_recursive
Scalar sum_recursive
Scalar mean_recursive
Scalar var_recursive
Scalar std_recursive
Scalar max_recursive
Scalar argmax_recursive
Scalar min_recursive
Scalar argmin_recursive
Scalar all_recursive
Scalar any_recursive
std::string compute_kernel_hash Compute a hash of the expression function/kernel based on types and metadata.

template<typename DestT, typename SrcT> DestT vm_cast_logic(const void * ptr)

template<typename DestT, typename CoordsT, ArrayExpression Expr, class Result> void execute_expression_recursive(Expr expr, Result result, CoordsT & coords, ssize_t axis)

template<typename DestT, typename IndexT, typename SrcT, ArrayLike Dest, ArrayLike Index, ArrayLike Src> void scatter_add_recursive(Dest & dest, const Index & indices, const Src & src)

template<typename T, ArrayLike A> Scalar sum_recursive(const A & arr)

template<typename T, ArrayLike A> Scalar mean_recursive(const A & arr)

template<typename T, ArrayLike A> Scalar var_recursive(const A & arr, ssize_t ddof = 0)

template<typename T, ArrayLike A> Scalar std_recursive(const A & arr, ssize_t ddof = 0)

template<typename T, ArrayLike A> Scalar max_recursive(const A & arr)

template<typename T, ArrayLike A> Scalar argmax_recursive(const A & arr)

template<typename T, ArrayLike A> Scalar min_recursive(const A & arr)

template<typename T, ArrayLike A> Scalar argmin_recursive(const A & arr)

template<typename T, ArrayLike A> Scalar all_recursive(const A & arr)

template<typename T, ArrayLike A> Scalar any_recursive(const A & arr)

std::string compute_kernel_hash(DType dest_t, DType src_t, DType work_t, const SOArrayPolicy & dest_layout, const std::vector< Instruction > & instrs, const std::vector< SOArrayPolicy > & layouts, const std::vector< Scalar > & scalars, bool expr_is_soarr)

Compute a hash of the expression function/kernel based on types and metadata.

Return Name Description
constexpr VM_Cast_Table< T > vm_cast_table constexpr

constexpr

constexpr VM_Cast_Table< T > vm_cast_table {}