@@ -43,294 +43,294 @@ find_package(TBB REQUIRED)
4343
4444## benchmark 1: wavefront computing
4545add_executable (
46- wavefront
46+ bench_wavefront
4747 ${TF_BENCHMARK_DIR} /wavefront/main.cpp
4848 ${TF_BENCHMARK_DIR} /wavefront/omp.cpp
4949 ${TF_BENCHMARK_DIR} /wavefront/tbb.cpp
5050 ${TF_BENCHMARK_DIR} /wavefront/seq.cpp
5151 ${TF_BENCHMARK_DIR} /wavefront/taskflow.cpp
5252)
53- target_include_directories (wavefront PRIVATE ${PROJECT_SOURCE_DIR} /3rd-party/CLI11)
53+ target_include_directories (bench_wavefront PRIVATE ${PROJECT_SOURCE_DIR} /3rd-party/CLI11)
5454target_link_libraries (
55- wavefront
55+ bench_wavefront
5656 ${PROJECT_NAME}
5757 ${TBB_IMPORTED_TARGETS}
5858 ${OpenMP_CXX_LIBRARIES}
5959 tf::default_settings
6060)
61- set_target_properties (wavefront PROPERTIES COMPILE_FLAGS ${OpenMP_CXX_FLAGS} )
61+ set_target_properties (bench_wavefront PROPERTIES COMPILE_FLAGS ${OpenMP_CXX_FLAGS} )
6262
6363## benchmark 2: graph traversal
6464add_executable (
65- graph_traversal
65+ bench_graph_traversal
6666 ${TF_BENCHMARK_DIR} /graph_traversal/main.cpp
6767 ${TF_BENCHMARK_DIR} /graph_traversal/omp.cpp
6868 ${TF_BENCHMARK_DIR} /graph_traversal/tbb.cpp
6969 ${TF_BENCHMARK_DIR} /graph_traversal/seq.cpp
7070 ${TF_BENCHMARK_DIR} /graph_traversal/taskflow.cpp
7171)
72- target_include_directories (graph_traversal PRIVATE ${PROJECT_SOURCE_DIR} /3rd-party/CLI11)
72+ target_include_directories (bench_graph_traversal PRIVATE ${PROJECT_SOURCE_DIR} /3rd-party/CLI11)
7373target_link_libraries (
74- graph_traversal
74+ bench_graph_traversal
7575 ${PROJECT_NAME}
7676 ${TBB_IMPORTED_TARGETS}
7777 ${OpenMP_CXX_LIBRARIES}
7878 tf::default_settings
7979)
80- set_target_properties (graph_traversal PROPERTIES COMPILE_FLAGS ${OpenMP_CXX_FLAGS} )
80+ set_target_properties (bench_graph_traversal PROPERTIES COMPILE_FLAGS ${OpenMP_CXX_FLAGS} )
8181
8282## benchmark 3: binary_tree
8383add_executable (
84- binary_tree
84+ bench_binary_tree
8585 ${TF_BENCHMARK_DIR} /binary_tree/main.cpp
8686 ${TF_BENCHMARK_DIR} /binary_tree/tbb.cpp
8787 ${TF_BENCHMARK_DIR} /binary_tree/omp.cpp
8888 ${TF_BENCHMARK_DIR} /binary_tree/taskflow.cpp
8989)
90- target_include_directories (binary_tree PRIVATE ${PROJECT_SOURCE_DIR} /3rd-party/CLI11)
90+ target_include_directories (bench_binary_tree PRIVATE ${PROJECT_SOURCE_DIR} /3rd-party/CLI11)
9191target_link_libraries (
92- binary_tree
92+ bench_binary_tree
9393 ${PROJECT_NAME}
9494 ${TBB_IMPORTED_TARGETS}
9595 ${OpenMP_CXX_LIBRARIES}
9696 tf::default_settings
9797)
98- set_target_properties (binary_tree PROPERTIES COMPILE_FLAGS ${OpenMP_CXX_FLAGS} )
98+ set_target_properties (bench_binary_tree PROPERTIES COMPILE_FLAGS ${OpenMP_CXX_FLAGS} )
9999
100100## benchmark 4: linear_chain
101101add_executable (
102- linear_chain
102+ bench_linear_chain
103103 ${TF_BENCHMARK_DIR} /linear_chain/main.cpp
104104 ${TF_BENCHMARK_DIR} /linear_chain/tbb.cpp
105105 ${TF_BENCHMARK_DIR} /linear_chain/omp.cpp
106106 ${TF_BENCHMARK_DIR} /linear_chain/taskflow.cpp
107107)
108- target_include_directories (linear_chain PRIVATE ${PROJECT_SOURCE_DIR} /3rd-party/CLI11)
108+ target_include_directories (bench_linear_chain PRIVATE ${PROJECT_SOURCE_DIR} /3rd-party/CLI11)
109109target_link_libraries (
110- linear_chain
110+ bench_linear_chain
111111 ${PROJECT_NAME}
112112 ${TBB_IMPORTED_TARGETS}
113113 ${OpenMP_CXX_LIBRARIES}
114114 tf::default_settings
115115)
116- set_target_properties (linear_chain PROPERTIES COMPILE_FLAGS ${OpenMP_CXX_FLAGS} )
116+ set_target_properties (bench_linear_chain PROPERTIES COMPILE_FLAGS ${OpenMP_CXX_FLAGS} )
117117
118118## benchmark 5: MNIST
119119add_executable (
120- mnist
120+ bench_mnist
121121 ${TF_BENCHMARK_DIR} /mnist/main.cpp
122122 ${TF_BENCHMARK_DIR} /mnist/omp.cpp
123123 ${TF_BENCHMARK_DIR} /mnist/tbb.cpp
124124 ${TF_BENCHMARK_DIR} /mnist/seq.cpp
125125 ${TF_BENCHMARK_DIR} /mnist/taskflow.cpp
126126)
127- target_include_directories (mnist PRIVATE ${PROJECT_SOURCE_DIR} /3rd-party/CLI11)
127+ target_include_directories (bench_mnist PRIVATE ${PROJECT_SOURCE_DIR} /3rd-party/CLI11)
128128target_link_libraries (
129- mnist
129+ bench_mnist
130130 ${PROJECT_NAME}
131131 ${TBB_IMPORTED_TARGETS}
132132 ${OpenMP_CXX_LIBRARIES}
133133 stdc++fs
134134 tf::default_settings
135135)
136- set_target_properties (mnist PROPERTIES COMPILE_FLAGS ${OpenMP_CXX_FLAGS} )
136+ set_target_properties (bench_mnist PROPERTIES COMPILE_FLAGS ${OpenMP_CXX_FLAGS} )
137137
138138## benchmark 6: matrix multiplication
139139add_executable (
140- matrix_multiplication
140+ bench_matrix_multiplication
141141 ${TF_BENCHMARK_DIR} /matrix_multiplication/main.cpp
142142 ${TF_BENCHMARK_DIR} /matrix_multiplication/omp.cpp
143143 ${TF_BENCHMARK_DIR} /matrix_multiplication/tbb.cpp
144144 ${TF_BENCHMARK_DIR} /matrix_multiplication/taskflow.cpp
145145)
146- target_include_directories (matrix_multiplication PRIVATE ${PROJECT_SOURCE_DIR} /3rd-party/CLI11)
146+ target_include_directories (bench_matrix_multiplication PRIVATE ${PROJECT_SOURCE_DIR} /3rd-party/CLI11)
147147target_link_libraries (
148- matrix_multiplication
148+ bench_matrix_multiplication
149149 ${PROJECT_NAME}
150150 ${TBB_IMPORTED_TARGETS}
151151 ${OpenMP_CXX_LIBRARIES}
152152 tf::default_settings
153153)
154- set_target_properties (matrix_multiplication PROPERTIES COMPILE_FLAGS ${OpenMP_CXX_FLAGS} )
154+ set_target_properties (bench_matrix_multiplication PROPERTIES COMPILE_FLAGS ${OpenMP_CXX_FLAGS} )
155155
156156## benchmark 7: mandelbrot
157157add_executable (
158- mandelbrot
158+ bench_mandelbrot
159159 ${TF_BENCHMARK_DIR} /mandelbrot/main.cpp
160160 ${TF_BENCHMARK_DIR} /mandelbrot/omp.cpp
161161 ${TF_BENCHMARK_DIR} /mandelbrot/tbb.cpp
162162 ${TF_BENCHMARK_DIR} /mandelbrot/taskflow.cpp
163163)
164- target_include_directories (mandelbrot PRIVATE ${PROJECT_SOURCE_DIR} /3rd-party/CLI11)
164+ target_include_directories (bench_mandelbrot PRIVATE ${PROJECT_SOURCE_DIR} /3rd-party/CLI11)
165165target_link_libraries (
166- mandelbrot
166+ bench_mandelbrot
167167 ${PROJECT_NAME}
168168 ${TBB_IMPORTED_TARGETS}
169169 ${OpenMP_CXX_LIBRARIES}
170170 tf::default_settings
171171)
172- set_target_properties (mandelbrot PROPERTIES COMPILE_FLAGS ${OpenMP_CXX_FLAGS} )
172+ set_target_properties (bench_mandelbrot PROPERTIES COMPILE_FLAGS ${OpenMP_CXX_FLAGS} )
173173
174174## benchmark 8: black_scholes
175175add_executable (
176- black_scholes
176+ bench_black_scholes
177177 ${TF_BENCHMARK_DIR} /black_scholes/main.cpp
178178 ${TF_BENCHMARK_DIR} /black_scholes/omp.cpp
179179 ${TF_BENCHMARK_DIR} /black_scholes/tbb.cpp
180180 ${TF_BENCHMARK_DIR} /black_scholes/taskflow.cpp
181181)
182- target_include_directories (black_scholes PRIVATE ${PROJECT_SOURCE_DIR} /3rd-party/CLI11)
182+ target_include_directories (bench_black_scholes PRIVATE ${PROJECT_SOURCE_DIR} /3rd-party/CLI11)
183183target_link_libraries (
184- black_scholes
184+ bench_black_scholes
185185 ${PROJECT_NAME}
186186 ${TBB_IMPORTED_TARGETS}
187187 ${OpenMP_CXX_LIBRARIES}
188188 tf::default_settings
189189)
190- set_target_properties (black_scholes PROPERTIES COMPILE_FLAGS ${OpenMP_CXX_FLAGS} )
190+ set_target_properties (bench_black_scholes PROPERTIES COMPILE_FLAGS ${OpenMP_CXX_FLAGS} )
191191
192192## benchmark 9: reduce_sum
193193add_executable (
194- reduce_sum
194+ bench_reduce_sum
195195 ${TF_BENCHMARK_DIR} /reduce_sum/main.cpp
196196 ${TF_BENCHMARK_DIR} /reduce_sum/omp.cpp
197197 ${TF_BENCHMARK_DIR} /reduce_sum/tbb.cpp
198198 ${TF_BENCHMARK_DIR} /reduce_sum/taskflow.cpp
199199)
200- target_include_directories (reduce_sum PRIVATE ${PROJECT_SOURCE_DIR} /3rd-party/CLI11)
200+ target_include_directories (bench_reduce_sum PRIVATE ${PROJECT_SOURCE_DIR} /3rd-party/CLI11)
201201target_link_libraries (
202- reduce_sum
202+ bench_reduce_sum
203203 ${PROJECT_NAME}
204204 ${TBB_IMPORTED_TARGETS}
205205 ${OpenMP_CXX_LIBRARIES}
206206 tf::default_settings
207207)
208- set_target_properties (reduce_sum PROPERTIES COMPILE_FLAGS ${OpenMP_CXX_FLAGS} )
208+ set_target_properties (bench_reduce_sum PROPERTIES COMPILE_FLAGS ${OpenMP_CXX_FLAGS} )
209209
210210## benchmark 10: sort
211211add_executable (
212- sort
212+ bench_sort
213213 ${TF_BENCHMARK_DIR} /sort /main.cpp
214214 ${TF_BENCHMARK_DIR} /sort /omp.cpp
215215 ${TF_BENCHMARK_DIR} /sort /tbb.cpp
216216 ${TF_BENCHMARK_DIR} /sort /taskflow.cpp
217217)
218- target_include_directories (sort PRIVATE ${PROJECT_SOURCE_DIR} /3rd-party/CLI11)
218+ target_include_directories (bench_sort PRIVATE ${PROJECT_SOURCE_DIR} /3rd-party/CLI11)
219219target_link_libraries (
220- sort
220+ bench_sort
221221 ${PROJECT_NAME}
222222 ${TBB_IMPORTED_TARGETS}
223223 ${OpenMP_CXX_LIBRARIES}
224224 tf::default_settings
225225)
226- set_target_properties (sort PROPERTIES COMPILE_FLAGS ${OpenMP_CXX_FLAGS} )
226+ set_target_properties (bench_sort PROPERTIES COMPILE_FLAGS ${OpenMP_CXX_FLAGS} )
227227
228228
229229## benchmark 11: linear_pipeline
230230add_executable (
231- linear_pipeline
231+ bench_linear_pipeline
232232 ${TF_BENCHMARK_DIR} /linear_pipeline/main.cpp
233233 ${TF_BENCHMARK_DIR} /linear_pipeline/omp.cpp
234234 ${TF_BENCHMARK_DIR} /linear_pipeline/tbb.cpp
235235 ${TF_BENCHMARK_DIR} /linear_pipeline/taskflow.cpp
236236)
237- target_include_directories (linear_pipeline PRIVATE ${PROJECT_SOURCE_DIR} /3rd-party/CLI11)
237+ target_include_directories (bench_linear_pipeline PRIVATE ${PROJECT_SOURCE_DIR} /3rd-party/CLI11)
238238target_link_libraries (
239- linear_pipeline
239+ bench_linear_pipeline
240240 ${PROJECT_NAME}
241241 ${TBB_IMPORTED_TARGETS}
242242 ${OpenMP_CXX_LIBRARIES}
243243 tf::default_settings
244244)
245- set_target_properties (linear_pipeline PROPERTIES COMPILE_FLAGS ${OpenMP_CXX_FLAGS} )
245+ set_target_properties (bench_linear_pipeline PROPERTIES COMPILE_FLAGS ${OpenMP_CXX_FLAGS} )
246246
247247
248248## benchmark 12: graph_pipeline
249249add_executable (
250- graph_pipeline
250+ bench_graph_pipeline
251251 ${TF_BENCHMARK_DIR} /graph_pipeline/main.cpp
252252 ${TF_BENCHMARK_DIR} /graph_pipeline/omp.cpp
253253 ${TF_BENCHMARK_DIR} /graph_pipeline/tbb.cpp
254254 ${TF_BENCHMARK_DIR} /graph_pipeline/taskflow.cpp
255255 ${TF_BENCHMARK_DIR} /graph_pipeline/gold.cpp
256256 #${TF_BENCHMARK_DIR}/graph_pipeline/fastflow.cpp
257257)
258- target_include_directories (graph_pipeline PRIVATE ${PROJECT_SOURCE_DIR} /3rd-party/CLI11)
259- target_include_directories (graph_pipeline PRIVATE ${PROJECT_SOURCE_DIR} /3rd-party/)
258+ target_include_directories (bench_graph_pipeline PRIVATE ${PROJECT_SOURCE_DIR} /3rd-party/CLI11)
259+ target_include_directories (bench_graph_pipeline PRIVATE ${PROJECT_SOURCE_DIR} /3rd-party/)
260260target_link_libraries (
261- graph_pipeline
261+ bench_graph_pipeline
262262 ${PROJECT_NAME}
263263 ${TBB_IMPORTED_TARGETS}
264264 ${OpenMP_CXX_LIBRARIES}
265265 tf::default_settings
266266)
267- set_target_properties (graph_pipeline PROPERTIES COMPILE_FLAGS ${OpenMP_CXX_FLAGS} )
267+ set_target_properties (bench_graph_pipeline PROPERTIES COMPILE_FLAGS ${OpenMP_CXX_FLAGS} )
268268
269269## benchmark 13: comparison with simple thread pool
270270add_executable (
271- thread_pool
271+ bench_thread_pool
272272 ${TF_BENCHMARK_DIR} /thread_pool/thread_pool.cpp
273273)
274- target_include_directories (thread_pool PRIVATE ${PROJECT_SOURCE_DIR} /3rd-party/CLI11)
274+ target_include_directories (bench_thread_pool PRIVATE ${PROJECT_SOURCE_DIR} /3rd-party/CLI11)
275275target_link_libraries (
276- thread_pool
276+ bench_thread_pool
277277 ${PROJECT_NAME}
278278 ${TBB_IMPORTED_TARGETS}
279279 ${OpenMP_CXX_LIBRARIES}
280280 tf::default_settings
281281)
282- set_target_properties (thread_pool PROPERTIES COMPILE_FLAGS ${OpenMP_CXX_FLAGS} )
282+ set_target_properties (bench_thread_pool PROPERTIES COMPILE_FLAGS ${OpenMP_CXX_FLAGS} )
283283
284284## benchmark 14: data_pipeline
285285add_executable (
286- data_pipeline
286+ bench_data_pipeline
287287 ${TF_BENCHMARK_DIR} /data_pipeline/main.cpp
288288 ${TF_BENCHMARK_DIR} /data_pipeline/tbb.cpp
289289 ${TF_BENCHMARK_DIR} /data_pipeline/taskflow.cpp
290290)
291- target_include_directories (data_pipeline PRIVATE ${PROJECT_SOURCE_DIR} /3rd-party/CLI11)
291+ target_include_directories (bench_data_pipeline PRIVATE ${PROJECT_SOURCE_DIR} /3rd-party/CLI11)
292292target_link_libraries (
293- data_pipeline
293+ bench_data_pipeline
294294 ${PROJECT_NAME}
295295 ${TBB_IMPORTED_TARGETS}
296296 ${OpenMP_CXX_LIBRARIES}
297297 tf::default_settings
298298)
299- set_target_properties (data_pipeline PROPERTIES COMPILE_FLAGS ${OpenMP_CXX_FLAGS} )
299+ set_target_properties (bench_data_pipeline PROPERTIES COMPILE_FLAGS ${OpenMP_CXX_FLAGS} )
300300
301301## benchmark 15: deferred_pipeline
302302add_executable (
303- deferred_pipeline
303+ bench_deferred_pipeline
304304 ${TF_BENCHMARK_DIR} /deferred_pipeline/main.cpp
305305 ${TF_BENCHMARK_DIR} /deferred_pipeline/pthread.cpp
306306 ${TF_BENCHMARK_DIR} /deferred_pipeline/taskflow.cpp
307307)
308- target_include_directories (deferred_pipeline PRIVATE ${PROJECT_SOURCE_DIR} /3rd-party/CLI11)
308+ target_include_directories (bench_deferred_pipeline PRIVATE ${PROJECT_SOURCE_DIR} /3rd-party/CLI11)
309309target_link_libraries (
310- deferred_pipeline
310+ bench_deferred_pipeline
311311 ${PROJECT_NAME}
312312 ${OpenMP_CXX_LIBRARIES}
313313 tf::default_settings
314314)
315- set_target_properties (deferred_pipeline PROPERTIES COMPILE_FLAGS ${OpenMP_CXX_FLAGS} )
315+ set_target_properties (bench_deferred_pipeline PROPERTIES COMPILE_FLAGS ${OpenMP_CXX_FLAGS} )
316316
317317## benchmark 16: for_each
318318add_executable (
319- for_each
319+ bench_for_each
320320 ${TF_BENCHMARK_DIR} /for_each/main.cpp
321321 ${TF_BENCHMARK_DIR} /for_each/omp.cpp
322322 ${TF_BENCHMARK_DIR} /for_each/tbb.cpp
323323 ${TF_BENCHMARK_DIR} /for_each/taskflow.cpp
324324)
325- target_include_directories (for_each PRIVATE ${PROJECT_SOURCE_DIR} /3rd-party/CLI11)
325+ target_include_directories (bench_for_each PRIVATE ${PROJECT_SOURCE_DIR} /3rd-party/CLI11)
326326target_link_libraries (
327- for_each
327+ bench_for_each
328328 ${PROJECT_NAME}
329329 ${TBB_IMPORTED_TARGETS}
330330 ${OpenMP_CXX_LIBRARIES}
331331 tf::default_settings
332332)
333- set_target_properties (for_each PROPERTIES COMPILE_FLAGS ${OpenMP_CXX_FLAGS} )
333+ set_target_properties (bench_for_each PROPERTIES COMPILE_FLAGS ${OpenMP_CXX_FLAGS} )
334334
335335## benchmark 17: scan
336336add_executable (
@@ -350,6 +350,22 @@ target_link_libraries(
350350)
351351set_target_properties (bench_scan PROPERTIES COMPILE_FLAGS ${OpenMP_CXX_FLAGS} )
352352
353+ ## benchmark 18: dependent_async
354+ #add_executable(
355+ # bench_dependent_async
356+ # ${TF_BENCHMARK_DIR}/dependent_async/main.cpp
357+ # ${TF_BENCHMARK_DIR}/dependent_async/omp.cpp
358+ # ${TF_BENCHMARK_DIR}/dependent_async/taskflow.cpp
359+ #)
360+ #target_include_directories(bench_dependent_async PRIVATE ${PROJECT_SOURCE_DIR}/3rd-party/CLI11)
361+ #target_link_libraries(
362+ # bench_dependent_async
363+ # ${PROJECT_NAME}
364+ # ${TBB_IMPORTED_TARGETS}
365+ # ${OpenMP_CXX_LIBRARIES}
366+ # tf::default_settings
367+ #)
368+ #set_target_properties(bench_dependent_async PROPERTIES COMPILE_FLAGS ${OpenMP_CXX_FLAGS})
353369
354370###############################################################################
355371# CUDA benchmarks
0 commit comments