#pragma once #include #include #include #include #include #include "utils.h" #include "generic.h" #define MAT_A_N_ROWS 256 #define MAT_A_N_COLS 256 #define MAT_B_N_ROWS 256 #define MAT_B_N_COLS 88 #define MAT_C_N_ROWS 256 #define MAT_C_N_COLS 88 #define EPSILON 2.22044605E-16F void loadMatrices(float** pMatrixA, float** pMatrixB, float** pMatrixC); float* loadBinMatrix(int type); void freeMatMem(float* pMatrixA, float* pMatrixB, float* pMatrixC); void saveBinMatrix(float* dst, char* fileName, int nRows, int nCols); double executeRealSparseMtxMtxMult(float * pMatrixA, float* pMatrixB, float* pMatrixC); double executeNaiveSparseMtxMtxMult(float* pMatrixA, float* pMatrixB, float* pMatrixC); double executeNaiveOriginalSparseMtxMtxMult(float* pMatrixA, float* pMatrixB, float* pMatrixC); void executeRealSparseMtxMtxMult_Indians();