STARS-H
Software for Testing Accuracy, Reliability and Scalability of Hierarchical computations
starsh-minimal.h
Go to the documentation of this file.
1 
13 #ifndef __STARSH_MINIMAL_H__
14 #define __STARSH_MINIMAL_H__
15 
25 // Add definitions for size_t, va_list and STARSH_kernel
26 #include "starsh.h"
27 
28 typedef struct starsh_mindata
30 
36 {
39  char dtype;
42 
45 
50 {
53 };
54 
55 int starsh_mindata_new(STARSH_mindata **data, STARSH_int count, char dtype);
58  enum STARSH_MINIMAL_KERNEL type);
59 
60 // KERNELS
61 void starsh_mindata_block_kernel(int nrows, int ncols, STARSH_int *irow,
62  STARSH_int *icol, void *row_data, void *col_data, void *result,
63  int ld);
64 
65 #endif // __STARSH_MINIMAL_H__
STARSH_MINIMAL_KERNEL
List of built-in kernels for starsh_mindata_get_kernel().
Definition: starsh-minimal.h:43
ssize_t STARSH_int
STARSH signed integer to support more, than MAX_INT rows/columns.
Definition: starsh.h:64
struct starsh_mindata STARSH_mindata
Structure for minimal example.
int starsh_mindata_new(STARSH_mindata **data, STARSH_int count, char dtype)
Create container for minimal working example.
Definition: minimal.c:47
int starsh_mindata_get_kernel(STARSH_kernel **kernel, STARSH_mindata *data, enum STARSH_MINIMAL_KERNEL type)
Get kernel for minimal working example.
Definition: minimal.c:70
void starsh_mindata_free(STARSH_mindata *data)
Definition: minimal.c:62
void starsh_mindata_block_kernel(int nrows, int ncols, STARSH_int *irow, STARSH_int *icol, void *row_data, void *col_data, void *result, int ld)
The only kernel for STARSH_mindata object.
Definition: minimal.c:17
Structure for minimal example.
Definition: starsh-minimal.h:28
void STARSH_kernel(int nrows, int ncols, STARSH_int *irow, STARSH_int *icol, void *row_data, void *col_data, void *result, int ld)
Definition: starsh.h:68
char dtype
Type of matrix entry (ignored).
Definition: starsh-minimal.h:39
The only kernel.
Definition: starsh-minimal.h:51
STARSH_int count
Size of matrix.
Definition: starsh-minimal.h:37