#include "FunctionTable.hpp" /******************************************************** * Random number generation * ********************************************************/ /*template<> char genRand() { static std::random_device rd; static std::mt19937 gen( rd() ); static std::uniform_int_distribution dis; return dis( gen ); } template<> int8_t genRand() { static std::random_device rd; static std::mt19937 gen( rd() ); static std::uniform_int_distribution dis; return dis( gen ); } template<> uint8_t genRand() { static std::random_device rd; static std::mt19937 gen( rd() ); static std::uniform_int_distribution dis; return dis( gen ); } template<> int16_t genRand() { static std::random_device rd; static std::mt19937 gen( rd() ); static std::uniform_int_distribution dis; return dis( gen ); } template<> uint16_t genRand() { static std::random_device rd; static std::mt19937 gen( rd() ); static std::uniform_int_distribution dis; return dis( gen ); } template<> int32_t genRand() { static std::random_device rd; static std::mt19937 gen( rd() ); static std::uniform_int_distribution dis; return dis( gen ); } template<> uint32_t genRand() { static std::random_device rd; static std::mt19937 gen( rd() ); static std::uniform_int_distribution dis; return dis( gen ); } template<> int64_t genRand() { static std::random_device rd; static std::mt19937 gen( rd() ); static std::uniform_int_distribution dis; return dis( gen ); } template<> uint64_t genRand() { static std::random_device rd; static std::mt19937 gen( rd() ); static std::uniform_int_distribution dis; return dis( gen ); } template<> float genRand() { static std::random_device rd; static std::mt19937 gen( rd() ); static std::uniform_real_distribution dis; return dis( gen ); } template<> double genRand() { static std::random_device rd; static std::mt19937 gen( rd() ); static std::uniform_real_distribution dis; return dis( gen ); } template<> long double genRand() { static std::random_device rd; static std::mt19937 gen( rd() ); static std::uniform_real_distribution dis; return dis( gen ); } */ /******************************************************** * axpy * ********************************************************/ template<> void call_axpy( size_t N, const float alpha, const float *x, float *y ) { ERROR("Not finished"); } template<> void call_axpy( size_t N, const double alpha, const double *x, double *y ) { ERROR("Not finished"); } /******************************************************** * Multiply two arrays * ********************************************************/ template<> void call_gemv( size_t M, size_t N, double alpha, double beta, const double *A, const double *x, double *y ) { ERROR("Not finished"); } template<> void call_gemv( size_t M, size_t N, float alpha, float beta, const float *A, const float *x, float *y ) { ERROR("Not finished"); } template<> void call_gemm( size_t M, size_t N, size_t K, double alpha, double beta, const double *A, const double *B, double *C ) { ERROR("Not finished"); } template<> void call_gemm( size_t M, size_t N, size_t K, float alpha, float beta, const float *A, const float *B, float *C ) { ERROR("Not finished"); }