![]() |
GHOST
1.1.2
General, Hybrid, and Optimized Sparse Toolkit
|
#include "ghost/config.h"
#include "ghost/types.h"
#include "ghost/densemat.h"
#include "ghost/util.h"
#include "ghost/math.h"
#include "ghost/tsmttsm.h"
#include "ghost/tsmttsm_var2_plain_gen.h"
#include "ghost/tsmttsm_var2_avx_gen.h"
#include "ghost/tsmttsm_plain_gen.h"
#include "ghost/tsmttsm_varcols1_plain_gen.h"
#include "ghost/tsmttsm_varcols2_plain_gen.h"
#include "ghost/tsmttsm_avx2_gen.h"
#include "ghost/tsmttsm_avx_gen.h"
#include "ghost/tsmttsm_sse_gen.h"
#include "ghost/tsmttsm_kahan_var2_plain_gen.h"
#include "ghost/tsmttsm_kahan_plain_gen.h"
#include "ghost/timing.h"
#include "ghost/machine.h"
#include "ghost/constants.h"
#include "ghost/locality.h"
#include "ghost/cpp11_fixes.h"
#include "ghost/autogen.h"
#include <unordered_map>
#include <vector>
#include "tsmttsm_kahan_plain.def"
#include "tsmttsm_kahan_var2_plain.def"
#include "tsmttsm_plain.def"
#include "tsmttsm_var2_plain.def"
#include "tsmttsm_varcols1_plain.def"
#include "tsmttsm_varcols2_plain.def"
#include "tsmttsm_var2_avx.def"
#include "tsmttsm_avx2.def"
#include "tsmttsm_avx.def"
#include "tsmttsm_sse.def"
Classes | |
struct | std::hash< ghost_tsmttsm_parameters > |
Namespaces | |
std | |
Typedefs | |
typedef ghost_tsmttsm_parameters | ghost_tsmttsm_kahan_parameters |
Functions | |
static bool | operator== (const ghost_tsmttsm_parameters &a, const ghost_tsmttsm_parameters &b) |
ghost_error | ghost_tsmttsm_valid (ghost_densemat *x, ghost_densemat *v, const char *transv, ghost_densemat *w, const char *transw, void *alpha, void *beta, int reduce, ghost_gemm_flags flags, int printerror) |
Check whether TSMTTSM can be applied instead of GEMM with the given arguments. More... | |
ghost_error | ghost_tsmttsm (ghost_densemat *x_in, ghost_densemat *v, ghost_densemat *w, void *alpha, void *beta, int reduce, int conjv, ghost_gemm_flags flags) |
Multiply a transposed distributed dense tall skinny matrix with another distributed dense tall skinny matrix and Allreduce the result. More... | |
Variables | |
static std::unordered_map < ghost_tsmttsm_parameters, ghost_tsmttsm_kernel > | ghost_tsmttsm_kernels |
static std::unordered_map < ghost_tsmttsm_parameters, ghost_tsmttsm_kernel > | ghost_tsmttsm_kahan_kernels |
ghost_error ghost_tsmttsm_valid | ( | ghost_densemat * | x, |
ghost_densemat * | v, | ||
const char * | transv, | ||
ghost_densemat * | w, | ||
const char * | transw, | ||
void * | alpha, | ||
void * | beta, | ||
int | reduce, | ||
ghost_gemm_flags | flags, | ||
int | printerror | ||
) |
Check whether TSMTTSM can be applied instead of GEMM with the given arguments.
x | |
v | |
transv | |
w | |
transw | |
alpha | |
beta | |
reduce | |
flags | |
printerror | Print an error message if application is not possible. |
|
static |
|
static |
|
static |