Manak  2.0.0
simple_module_benchmark_case.hpp
Go to the documentation of this file.
1 
8 #ifndef MANAK_BASE_LIBRARY_NAME
9 #define MANAK_BASE_LIBRARY_NAME MANAK_SIMPLE_MODULE
10 #endif // MANAK_BASE_LIBRARY_NAME
11 
15 
16 #define MANAK_BENCHMARK_CASE_TIS(Name, Function, Tol, Iter, SP) \
17 _MANAK_BENCHMARK_CASE_TIS(Name, MANAK_BASE_LIBRARY_NAME, Function, Tol, Iter, SP)
18 
19 #define MANAK_BENCHMARK_CASE_TI(Name, Function, Tol, Iter) \
20 MANAK_BENCHMARK_CASE_TIS(Name, Function, Tol, Iter, MANAK_DEFAULT_SP)
21 
22 #define MANAK_BENCHMARK_CASE_IS(Name, Function, Iter, SP) \
23 MANAK_BENCHMARK_CASE_TIS(Name, Function, MANAK_DEFAULT_TOLERANCE, Iter, SP)
24 
25 #define MANAK_BENCHMARK_CASE_I(Name, Function, Iter) \
26 MANAK_BENCHMARK_CASE_TI(Name, Function, Iter, MANAK_DEFAULT_TOLERANCE)
27 
28 #define MANAK_BENCHMARK_CASE_T(Name, Function, Tol) \
29 MANAK_BENCHMARK_CASE_TI(Name, Function, Tol, MANAK_DEFAULT_ITERATIONS)
30 
31 #define MANAK_BENCHMARK_CASE(Name, Function) \
32 MANAK_BENCHMARK_CASE_T(Name, Function, MANAK_DEFAULT_TOLERANCE)
33 
34 
38 
39 #define MANAK_AUTO_BENCHMARK_CASE_TIS(Name, Tol, Iter, SP) \
40 _MANAK_AUTO_BENCHMARK_CASE_TIS(Name, MANAK_BASE_LIBRARY_NAME, Tol, Iter, SP)
41 
42 #define MANAK_AUTO_BENCHMARK_CASE_TI(Name, Tol, Iter) \
43 MANAK_AUTO_BENCHMARK_CASE_TIS(Name, Tol, Iter, MANAK_DEFAULT_SP)
44 
45 #define MANAK_AUTO_BENCHMARK_CASE_IS(Name, Iter, SP) \
46 MANAK_AUTO_BENCHMARK_CASE_TIS(Name, MANAK_DEFAULT_TOLERANCE, Iter, SP)
47 
48 #define MANAK_AUTO_BENCHMARK_CASE_T(Name, Tol) \
49 MANAK_AUTO_BENCHMARK_CASE_TI(Name, Tol, MANAK_DEFAULT_ITERATIONS)
50 
51 #define MANAK_AUTO_BENCHMARK_CASE_I(Name, Iter) \
52 MANAK_AUTO_BENCHMARK_CASE_TI(Name, MANAK_DEFAULT_TOLERANCE, Iter)
53 
54 #define MANAK_AUTO_BENCHMARK_CASE(Name) \
55 MANAK_AUTO_BENCHMARK_CASE_T(Name, MANAK_DEFAULT_TOLERANCE)
56 
60 
61 #define MANAK_CREATE_BENCHMARK_WITH_TEMPLATE_TIS(Name, Fun, Tol, Iter, SP) \
62 _MANAK_CREATE_BENCHMARK_WITH_TEMPLATE_TIS(Name, MANAK_BASE_LIBRARY_NAME, Fun, Tol, Iter, SP)
63 
64 #define MANAK_CREATE_BENCHMARK_WITH_TEMPLATE_TI(Name, Fun, Tol, Iter) \
65 MANAK_CREATE_BENCHMARK_WITH_TEMPLATE_TIS(Name, Fun, Tol, Iter, MANAK_DEFAULT_SP)
66 
67 #define MANAK_CREATE_BENCHMARK_WITH_TEMPLATE_IS(Name, Fun, Iter, SP) \
68 MANAK_CREATE_BENCHMARK_WITH_TEMPLATE_TIS(Name, Fun, MANAK_DEFAULT_TOLERANCE, Iter, SP)
69 
70 #define MANAK_CREATE_BENCHMARK_WITH_TEMPLATE_T(Name, Fun, Tol) \
71 MANAK_CREATE_BENCHMARK_WITH_TEMPLATE_TI(Name, Fun, Tol, MANAK_DEFAULT_ITERATIONS)
72 
73 #define MANAK_CREATE_BENCHMARK_WITH_TEMPLATE_I(Name, Fun, Iter) \
74 MANAK_CREATE_BENCHMARK_WITH_TEMPLATE_TI(Name, Fun, MANAK_DEFAULT_TOLERANCE, Iter)
75 
76 #define MANAK_CREATE_BENCHMARK_WITH_TEMPLATE(Name, Fun) \
77 MANAK_CREATE_BENCHMARK_WITH_TEMPLATE_T(Name, Fun, MANAK_DEFAULT_TOLERANCE)
78 
82 
83 #define MANAK_AUTO_GROUP_BENCHMARK_CASE_TIS(Name, Tol, Iter, SP) \
84 _MANAK_AUTO_GROUP_BENCHMARK_CASE_TIS(Name, MANAK_STRINGIZE(MANAK_BASE_LIBRARY_NAME), Tol, Iter, SP)
85 
86 #define MANAK_AUTO_GROUP_BENCHMARK_CASE_TI(Name, Tol, Iter) \
87 MANAK_AUTO_GROUP_BENCHMARK_CASE_TIS(Name, Tol, Iter, MANAK_DEFAULT_SP)
88 
89 #define MANAK_AUTO_GROUP_BENCHMARK_CASE_IS(Name, Iter, SP) \
90 MANAK_AUTO_GROUP_BENCHMARK_CASE_TIS(Name, MANAK_DEFAULT_TOLERANCE, Iter, SP)
91 
92 #define MANAK_AUTO_GROUP_BENCHMARK_CASE_T(Name, Tol) \
93 MANAK_AUTO_GROUP_BENCHMARK_CASE_TI(Name, Tol, MANAK_DEFAULT_ITERATIONS)
94 
95 #define MANAK_AUTO_GROUP_BENCHMARK_CASE_I(Name, Iter) \
96 MANAK_AUTO_GROUP_BENCHMARK_CASE_TI(Name, MANAK_DEFAULT_TOLERANCE, Iter)
97 
98 #define MANAK_AUTO_GROUP_BENCHMARK_CASE(Name) \
99 MANAK_AUTO_GROUP_BENCHMARK_CASE_T(Name, MANAK_DEFAULT_TOLERANCE)
100 
104 
105 #define MANAK_GROUP_BENCHMARK_CASE_TIS(Name, Fun, Tol, Iter, SP) \
106 _MANAK_GROUP_BENCHMARK_CASE_TIS(Name, MANAK_STRINGIZE(MANAK_BASE_LIBRARY_NAME), Fun, Tol, Iter, SP)
107 
108 #define MANAK_GROUP_BENCHMARK_CASE_TI(Name, Fun, Tol, Iter) \
109 MANAK_GROUP_BENCHMARK_CASE_TIS(Name, Fun, Tol, Iter, MANAK_DEFAULT_SP)
110 
111 #define MANAK_GROUP_BENCHMARK_CASE_IS(Name, Fun, Iter, SP) \
112 MANAK_GROUP_BENCHMARK_CASE_TIS(Name, Fun, MANAK_DEFAULT_TOLERANCE, Iter, SP)
113 
114 #define MANAK_GROUP_BENCHMARK_CASE_T(Name, Fun, Tol) \
115 MANAK_GROUP_BENCHMARK_CASE_TI(Name, Fun, Tol, MANAK_DEFAULT_ITERATIONS)
116 
117 #define MANAK_GROUP_BENCHMARK_CASE_I(Name, Fun, Iter) \
118 MANAK_GROUP_BENCHMARK_CASE_TI(Name, Fun, MANAK_DEFAULT_TOLERANCE, Iter)
119 
120 #define MANAK_GROUP_BENCHMARK_CASE(Name, Fun) \
121 MANAK_GROUP_BENCHMARK_CASE_T(Name, Fun, MANAK_DEFAULT_TOLERANCE)
122 
126 
127 #define MANAK_CREATE_GROUP_BENCHMARK_WITH_TEMPLATE_TIS(Name, Fun, Tol, Iter, SP) \
128 _MANAK_CREATE_GROUP_BENCHMARK_WITH_TEMPLATE_TIS(Name, MANAK_STRINGIZE(MANAK_BASE_LIBRARY_NAME), Fun, Tol, Iter, SP)
129 
130 #define MANAK_CREATE_GROUP_BENCHMARK_WITH_TEMPLATE_TI(Name, Fun, Tol, Iter) \
131 MANAK_CREATE_GROUP_BENCHMARK_WITH_TEMPLATE_TIS(Name, Fun, Tol, Iter, MANAK_DEFAULT_SP)
132 
133 #define MANAK_CREATE_GROUP_BENCHMARK_WITH_TEMPLATE_IS(Name, Fun, Iter, SP) \
134 MANAK_CREATE_GROUP_BENCHMARK_WITH_TEMPLATE_TIS(Name, Fun, MANAK_DEFAULT_TOLERANCE, Iter, SP)
135 
136 #define MANAK_CREATE_GROUP_BENCHMARK_WITH_TEMPLATE_T(Name, Fun, Tol) \
137 MANAK_CREATE_GROUP_BENCHMARK_WITH_TEMPLATE_TI(Name, Fun, Tol, MANAK_DEFAULT_ITERATIONS)
138 
139 #define MANAK_CREATE_GROUP_BENCHMARK_WITH_TEMPLATE_I(Name, Fun, Iter) \
140 MANAK_CREATE_GROUP_BENCHMARK_WITH_TEMPLATE_TI(Name, Fun, MANAK_DEFAULT_TOLERANCE, Iter)
141 
142 #define MANAK_CREATE_GROUP_BENCHMARK_WITH_TEMPLATE(Name, Fun) \
143 MANAK_CREATE_GROUP_BENCHMARK_WITH_TEMPLATE_T(Name, Fun, MANAK_DEFAULT_TOLERANCE)