PandA-2024.02
2mm.h
Go to the documentation of this file.
1 
10 #ifndef _2MM_H
11 # define _2MM_H
12 
13 /* Default to LARGE_DATASET. */
14 # if !defined(MINI_DATASET) && !defined(SMALL_DATASET) && !defined(MEDIUM_DATASET) && !defined(LARGE_DATASET) && !defined(EXTRALARGE_DATASET)
15 # define LARGE_DATASET
16 # endif
17 
18 # if !defined(NI) && !defined(NJ) && !defined(NK) && !defined(NL)
19 /* Define sample dataset sizes. */
20 # ifdef MINI_DATASET
21 # define NI 16
22 # define NJ 18
23 # define NK 22
24 # define NL 24
25 # endif
26 
27 # ifdef SMALL_DATASET
28 # define NI 40
29 # define NJ 50
30 # define NK 70
31 # define NL 80
32 # endif
33 
34 # ifdef MEDIUM_DATASET
35 # define NI 180
36 # define NJ 190
37 # define NK 210
38 # define NL 220
39 # endif
40 
41 # ifdef LARGE_DATASET
42 # define NI 800
43 # define NJ 900
44 # define NK 1100
45 # define NL 1200
46 # endif
47 
48 # ifdef EXTRALARGE_DATASET
49 # define NI 1600
50 # define NJ 1800
51 # define NK 2200
52 # define NL 2400
53 # endif
54 
55 
56 #endif /* !(NI NJ NK NL) */
57 
58 # define _PB_NI POLYBENCH_LOOP_BOUND(NI,ni)
59 # define _PB_NJ POLYBENCH_LOOP_BOUND(NJ,nj)
60 # define _PB_NK POLYBENCH_LOOP_BOUND(NK,nk)
61 # define _PB_NL POLYBENCH_LOOP_BOUND(NL,nl)
62 
63 
64 /* Default data type */
65 # if !defined(DATA_TYPE_IS_INT) && !defined(DATA_TYPE_IS_FLOAT) && !defined(DATA_TYPE_IS_DOUBLE)
66 # define DATA_TYPE_IS_DOUBLE
67 # endif
68 
69 #ifdef DATA_TYPE_IS_INT
70 # define DATA_TYPE int
71 # define DATA_PRINTF_MODIFIER "%d "
72 # define SCALAR_VAL(x) x
73 #endif
74 
75 #ifdef DATA_TYPE_IS_FLOAT
76 # define DATA_TYPE float
77 # define DATA_PRINTF_MODIFIER "%0.2f "
78 # define SCALAR_VAL(x) x##f
79 # define SQRT_FUN(x) sqrtf(x)
80 # define EXP_FUN(x) expf(x)
81 # define POW_FUN(x,y) powf(x,y)
82 # endif
83 
84 #ifdef DATA_TYPE_IS_DOUBLE
85 # define DATA_TYPE double
86 # define DATA_PRINTF_MODIFIER "%0.2lf "
87 # define SCALAR_VAL(x) x
88 # define SQRT_FUN(x) sqrt(x)
89 # define EXP_FUN(x) exp(x)
90 # define POW_FUN(x,y) pow(x,y)
91 # endif
92 
93 #endif /* !_2MM_H */

Generated on Mon Feb 12 2024 13:02:50 for PandA-2024.02 by doxygen 1.8.13