1#ifndef included_AMP_FunctionTable
2#define included_AMP_FunctionTable
5#include "AMP/utils/ArraySize.h"
33 static void rand(
size_t N, TYPE *x );
44 template<
typename LAMBDA>
45 static TYPE
reduce( LAMBDA op,
size_t N,
const TYPE *A, TYPE initialValue );
57 template<
typename LAMBDA>
58 static TYPE
reduce( LAMBDA op,
size_t N,
const TYPE *A,
const TYPE *B, TYPE initialValue );
68 template<
typename LAMBDA>
69 static void transform( LAMBDA fun,
size_t N,
const TYPE *x, TYPE *y );
80 template<
typename LAMBDA>
81 static void transform( LAMBDA fun,
size_t N,
const TYPE *x,
const TYPE *y, TYPE *z );
88 static TYPE
min(
size_t N,
const TYPE *x );
95 static TYPE
max(
size_t N,
const TYPE *x );
102 static TYPE
sum(
size_t N,
const TYPE *x );
126 static void scale(
size_t N, TYPE x, TYPE *y );
134 static void px(
size_t N, TYPE x, TYPE *y );
142 static void px(
size_t N,
const TYPE *x, TYPE *y );
150 static void mx(
size_t N, TYPE x, TYPE *y );
158 static void mx(
size_t N,
const TYPE *x, TYPE *y );
167 static void axpy( TYPE alpha,
size_t N,
const TYPE *x, TYPE *y );
177 static void axpby( TYPE alpha,
size_t N,
const TYPE *x, TYPE beta, TYPE *y );
207 static bool equals(
size_t N,
const TYPE *A,
const TYPE *B, TYPE tol );
Simple class to store the array dimensions.
static void transformAbs(size_t N, const TYPE *A, TYPE *B)
static void axpy(TYPE alpha, size_t N, const TYPE *x, TYPE *y)
static TYPE reduce(LAMBDA op, size_t N, const TYPE *A, TYPE initialValue)
static void axpby(TYPE alpha, size_t N, const TYPE *x, TYPE beta, TYPE *y)
static TYPE min(size_t N, const TYPE *x)
static void transformSoftPlus(size_t N, const TYPE *A, TYPE *B)
static void px(size_t N, const TYPE *x, TYPE *y)
static TYPE max(size_t N, const TYPE *x)
static void transformSigmoid(size_t N, const TYPE *A, TYPE *B)
static void mx(size_t N, const TYPE *x, TYPE *y)
static void gemm(TYPE alpha, const ArraySize &sa, const TYPE *A, const ArraySize &sb, const TYPE *B, TYPE beta, const ArraySize &sc, TYPE *C)
static void scale(size_t N, TYPE x, TYPE *y)
static void mx(size_t N, TYPE x, TYPE *y)
static void transform(LAMBDA fun, size_t N, const TYPE *x, TYPE *y)
static bool equals(size_t N, const TYPE *A, const TYPE *B, TYPE tol)
static void transformTanh(size_t N, const TYPE *A, TYPE *B)
static TYPE reduce(LAMBDA op, size_t N, const TYPE *A, const TYPE *B, TYPE initialValue)
static void transform(LAMBDA fun, size_t N, const TYPE *x, const TYPE *y, TYPE *z)
static void transformReLU(size_t N, const TYPE *A, TYPE *B)
static void px(size_t N, TYPE x, TYPE *y)
static void multiply(const ArraySize &sa, const TYPE *a, const ArraySize &sb, const TYPE *b, const ArraySize &sc, TYPE *c)
static void rand(size_t N, TYPE *x)
static void transformHardTanh(size_t N, const TYPE *A, TYPE *B)
static TYPE sum(size_t N, const TYPE *x)