@@ -136,6 +136,81 @@ UMF_BENCHMARK_REGISTER_F(multiple_malloc_free_benchmark, scalable_pool_uniform)
136
136
137
137
#endif
138
138
139
+ UMF_BENCHMARK_TEMPLATE_DEFINE (multiple_malloc_free_benchmark,
140
+ proxy_pool_fixedprovider, fixed_alloc_size,
141
+ pool_allocator<proxy_pool<fixed_provider>>);
142
+
143
+ UMF_BENCHMARK_REGISTER_F (multiple_malloc_free_benchmark,
144
+ proxy_pool_fixedprovider)
145
+ ->Apply(&default_multiple_alloc_fix_size)
146
+ ->Apply(&singlethreaded);
147
+
148
+ UMF_BENCHMARK_TEMPLATE_DEFINE (multiple_malloc_free_benchmark, fixed_provider,
149
+ fixed_alloc_size,
150
+ provider_allocator<fixed_provider>);
151
+ UMF_BENCHMARK_REGISTER_F (multiple_malloc_free_benchmark, fixed_provider)
152
+ ->Apply(&default_multiple_alloc_fix_size)
153
+ ->Apply(&singlethreaded);
154
+
155
+ UMF_BENCHMARK_TEMPLATE_DEFINE (multiple_malloc_free_benchmark,
156
+ disjoint_pool_fix_fixedprovider, fixed_alloc_size,
157
+ pool_allocator<disjoint_pool<fixed_provider>>);
158
+ UMF_BENCHMARK_REGISTER_F (multiple_malloc_free_benchmark,
159
+ disjoint_pool_fix_fixedprovider)
160
+ ->Apply(&default_multiple_alloc_fix_size)
161
+ ->Apply(&multithreaded);
162
+
163
+ UMF_BENCHMARK_TEMPLATE_DEFINE (multiple_malloc_free_benchmark,
164
+ disjoint_pool_uniform_fixedprovider,
165
+ uniform_alloc_size,
166
+ pool_allocator<disjoint_pool<fixed_provider>>);
167
+ UMF_BENCHMARK_REGISTER_F (multiple_malloc_free_benchmark,
168
+ disjoint_pool_uniform_fixedprovider)
169
+ ->Apply(&default_multiple_alloc_uniform_size)
170
+ ->Apply(&singlethreaded);
171
+ // TODO: change to multithreaded
172
+ // ->Apply(&multithreaded);
173
+
174
+ #ifdef UMF_POOL_JEMALLOC_ENABLED
175
+ UMF_BENCHMARK_TEMPLATE_DEFINE (multiple_malloc_free_benchmark,
176
+ jemalloc_pool_fixedprovider, fixed_alloc_size,
177
+ pool_allocator<jemalloc_pool<fixed_provider>>);
178
+ UMF_BENCHMARK_REGISTER_F (multiple_malloc_free_benchmark, jemalloc_pool_fix)
179
+ ->Apply(&default_multiple_alloc_fix_size)
180
+ ->Apply(&multithreaded);
181
+
182
+ UMF_BENCHMARK_TEMPLATE_DEFINE (multiple_malloc_free_benchmark,
183
+ jemalloc_pool_uniform_fixedprovider,
184
+ uniform_alloc_size,
185
+ pool_allocator<jemalloc_pool<fixed_provider>>);
186
+ UMF_BENCHMARK_REGISTER_F (multiple_malloc_free_benchmark, jemalloc_pool_uniform)
187
+ ->Apply(&default_multiple_alloc_uniform_size)
188
+ ->Apply(&multithreaded);
189
+
190
+ #endif
191
+
192
+ #ifdef UMF_POOL_SCALABLE_ENABLED
193
+ UMF_BENCHMARK_TEMPLATE_DEFINE (multiple_malloc_free_benchmark,
194
+ scalable_pool_fix_fixedprovider, fixed_alloc_size,
195
+ pool_allocator<scalable_pool<fixed_provider>>);
196
+
197
+ UMF_BENCHMARK_REGISTER_F (multiple_malloc_free_benchmark,
198
+ scalable_pool_fix_fixedprovider)
199
+ ->Apply(&default_multiple_alloc_fix_size)
200
+ ->Apply(&multithreaded);
201
+
202
+ UMF_BENCHMARK_TEMPLATE_DEFINE (multiple_malloc_free_benchmark,
203
+ scalable_pool_uniform_fixedprovider,
204
+ uniform_alloc_size,
205
+ pool_allocator<scalable_pool<fixed_provider>>);
206
+
207
+ UMF_BENCHMARK_REGISTER_F (multiple_malloc_free_benchmark,
208
+ scalable_pool_uniform_fixedprovider)
209
+ ->Apply(&default_multiple_alloc_uniform_size)
210
+ ->Apply(&multithreaded);
211
+
212
+ #endif
213
+
139
214
// BENCHMARK_MAIN();
140
215
int main (int argc, char **argv) {
141
216
if (initAffinityMask ()) {
0 commit comments