GHOST  1.1.2
General, Hybrid, and Optimized Sparse Toolkit
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
dot.h
Go to the documentation of this file.
1 
6 #ifndef GHOST_DOT_H
7 #define GHOST_DOT_H
8 
9 #include "config.h"
10 #include "types.h"
11 #include "densemat.h"
12 #include "math.h"
13 
14 typedef struct
15 {
23  int blocksz;
31 
33 
34 #ifdef __cplusplus
35 extern "C" {
36 #endif
37 
52  ghost_error ghost_dot(void *res, ghost_densemat *vec1, ghost_densemat *vec2);
53 
66 
67 
68 #ifdef __cplusplus
69 }
70 #endif
71 #endif
Functions for global mathematical operations.
ghost_implementation
Possible implementations of a CPU function.
Definition: types.h:323
Header file for type definitions.
ghost_error(* ghost_dot_kernel)(void *, ghost_densemat *, ghost_densemat *)
Definition: dot.h:32
ghost_error
Error return type.
Definition: error.h:23
ghost_alignment
Possible alignments of data access.
Definition: types.h:315
ghost_densemat_storage storage
Definition: dot.h:29
ghost_datatype dt
The data type of the densemats.
Definition: dot.h:19
int blocksz
The vector block size.
Definition: dot.h:23
ghost_error ghost_localdot(void *res, ghost_densemat *vec1, ghost_densemat *vec2)
Compute the local dot product of two dense vectors/matrices.
Definition: dot.cpp:40
ghost_alignment alignment
Definition: dot.h:28
ghost_datatype
Available primitive data types.
Definition: types.h:248
ghost_densemat_storage
Densemat storage orders.
Definition: densemat.h:94
ghost_error ghost_dot(void *res, ghost_densemat *vec1, ghost_densemat *vec2)
Compute the global dot product of two dense vectors/matrices.
Definition: dot.cpp:148
Definition: dot.h:14
ghost_implementation impl
The second configure block size M.
Definition: dot.h:27
A dense vector/matrix.
Definition: densemat.h:226