Skip to content

Commit

Permalink
updated README
Browse files Browse the repository at this point in the history
  • Loading branch information
tsung-wei-huang committed May 15, 2019
1 parent 7432b35 commit 5a853d0
Show file tree
Hide file tree
Showing 258 changed files with 41,386 additions and 4,839 deletions.
100 changes: 17 additions & 83 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -122,50 +122,30 @@ target_link_libraries(debug ${PROJECT_NAME} Threads::Threads)
add_executable(reduce ${TF_EXAMPLE_DIR}/reduce.cpp)
target_link_libraries(reduce ${PROJECT_NAME} Threads::Threads)

add_executable(executor_profiler ${TF_EXAMPLE_DIR}/executor_profiler.cpp)
target_link_libraries(executor_profiler ${PROJECT_NAME} Threads::Threads)

add_executable(taskflow_profiler ${TF_EXAMPLE_DIR}/taskflow_profiler.cpp)
target_link_libraries(taskflow_profiler ${PROJECT_NAME} Threads::Threads)

add_executable(matrix ${TF_EXAMPLE_DIR}/matrix.cpp)
target_link_libraries(matrix ${PROJECT_NAME} Threads::Threads)

add_executable(parallel_for ${TF_EXAMPLE_DIR}/parallel_for.cpp)
target_link_libraries(parallel_for ${PROJECT_NAME} Threads::Threads)

add_executable(threadpool_cxx14 ${TF_EXAMPLE_DIR}/threadpool_cxx14.cpp)
set_property(TARGET threadpool_cxx14 PROPERTY CXX_STANDARD 14)
target_link_libraries(threadpool_cxx14 Threads::Threads)

add_executable(multiple_dispatch ${TF_EXAMPLE_DIR}/multiple_dispatch.cpp)
target_link_libraries(multiple_dispatch ${PROJECT_NAME} Threads::Threads)

add_executable(dispatch ${TF_EXAMPLE_DIR}/dispatch.cpp)
target_link_libraries(dispatch ${PROJECT_NAME} Threads::Threads)

add_executable(dynamic_traversal ${TF_EXAMPLE_DIR}/dynamic_traversal.cpp)
target_link_libraries(dynamic_traversal ${PROJECT_NAME} Threads::Threads)

add_executable(framework ${TF_EXAMPLE_DIR}/framework.cpp)
target_link_libraries(framework ${PROJECT_NAME} Threads::Threads)

add_executable(dice_pools ${TF_EXAMPLE_DIR}/dice_pools.cpp)
target_link_libraries(dice_pools ${PROJECT_NAME} Threads::Threads)

add_executable(get_best_dice ${TF_EXAMPLE_DIR}/get_best_dice.cpp)
target_link_libraries(get_best_dice ${PROJECT_NAME} Threads::Threads)
add_executable(run_variants ${TF_EXAMPLE_DIR}/run_variants.cpp)
target_link_libraries(run_variants ${PROJECT_NAME} Threads::Threads)

add_executable(composition ${TF_EXAMPLE_DIR}/composition.cpp)
target_link_libraries(composition ${PROJECT_NAME} Threads::Threads)

#add_executable(dice_pools ${TF_EXAMPLE_DIR}/dice_pools.cpp)
#target_link_libraries(dice_pools ${PROJECT_NAME} Threads::Threads)
#
#add_executable(get_best_dice ${TF_EXAMPLE_DIR}/get_best_dice.cpp)
#target_link_libraries(get_best_dice ${PROJECT_NAME} Threads::Threads)

endif()

# -----------------------------------------------------------------------------
# Unittest
# -----------------------------------------------------------------------------


if(${TF_BUILD_TESTS})

enable_testing()
Expand All @@ -176,8 +156,8 @@ set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${TF_UTEST_DIR})
add_executable(utility unittest/utility.cpp)
target_link_libraries(utility ${PROJECT_NAME} Threads::Threads)
target_include_directories(utility PRIVATE ${PROJECT_SOURCE_DIR}/doctest)
add_test(passive_vector ${TF_UTEST_DIR}/utility -tc=PassiveVector)
add_test(singular_alloc ${TF_UTEST_DIR}/utility -tc=SingularAllocator)
add_test(passive_vector ${TF_UTEST_DIR}/utility -tc=PassiveVector)
add_test(singular_alloc ${TF_UTEST_DIR}/utility -tc=SingularAllocator)

# unittest for taskflow
add_executable(taskflow_test_tmp unittest/taskflow.cpp)
Expand All @@ -186,46 +166,27 @@ target_include_directories(taskflow_test_tmp PRIVATE ${PROJECT_SOURCE_DIR}/docte
set_target_properties(taskflow_test_tmp PROPERTIES OUTPUT_NAME "taskflow")
add_test(builder ${TF_UTEST_DIR}/taskflow -tc=Builder)
add_test(dispatch ${TF_UTEST_DIR}/taskflow -tc=Dispatch)
add_test(executor ${TF_UTEST_DIR}/taskflow -tc=Executor)
add_test(parallel_for ${TF_UTEST_DIR}/taskflow -tc=ParallelFor)
add_test(parallel_for_idx ${TF_UTEST_DIR}/taskflow -tc=ParallelForOnIndex)
add_test(reduce ${TF_UTEST_DIR}/taskflow -tc=Reduce)
add_test(reduce_min ${TF_UTEST_DIR}/taskflow -tc=ReduceMin)
add_test(reduce_max ${TF_UTEST_DIR}/taskflow -tc=ReduceMax)
add_test(joined_subflow ${TF_UTEST_DIR}/taskflow -tc=JoinedSubflow)
add_test(detached_subflow ${TF_UTEST_DIR}/taskflow -tc=DetachedSubflow)
add_test(framework ${TF_UTEST_DIR}/taskflow -tc=Framework)
add_test(composition-1 ${TF_UTEST_DIR}/taskflow -tc=Composition-1)
add_test(composition-2 ${TF_UTEST_DIR}/taskflow -tc=Composition-2)
add_test(composition-3 ${TF_UTEST_DIR}/taskflow -tc=Composition-3)
add_test(observer ${TF_UTEST_DIR}/taskflow -tc=observer)
add_test(observer ${TF_UTEST_DIR}/taskflow -tc=Observer)

# unittest for executor
add_executable(executor_test_tmp unittest/executor.cpp)
target_link_libraries(executor_test_tmp ${PROJECT_NAME} Threads::Threads)
target_include_directories(executor_test_tmp PRIVATE ${PROJECT_SOURCE_DIR}/doctest)
set_target_properties(executor_test_tmp PROPERTIES OUTPUT_NAME "executor")
# unittest for WorkStealingQueue
add_executable(spmc_queue unittest/spmc_queue.cpp)
target_link_libraries(spmc_queue ${PROJECT_NAME} Threads::Threads)
target_include_directories(spmc_queue PRIVATE ${PROJECT_SOURCE_DIR}/doctest)
add_test(WorkStealingQueue.Owner ${TF_UTEST_DIR}/executor -tc=WSQ.Owner)
add_test(WorkStealingQueue.1Thief ${TF_UTEST_DIR}/executor -tc=WSQ.1Thief)
add_test(WorkStealingQueue.2Thieves ${TF_UTEST_DIR}/executor -tc=WSQ.2Thieves)
add_test(WorkStealingQueue.3Thieves ${TF_UTEST_DIR}/executor -tc=WSQ.3Thieves)
add_test(WorkStealingQueue.4Thieves ${TF_UTEST_DIR}/executor -tc=WSQ.4Thieves)
add_test(simple_executor ${TF_UTEST_DIR}/executor -tc=SimpleExecutor)
add_test(proactive_executor ${TF_UTEST_DIR}/executor -tc=ProactiveExecutor)
add_test(speculative_executor ${TF_UTEST_DIR}/executor -tc=SpeculativeExecutor)
add_test(work_stealing_executor ${TF_UTEST_DIR}/executor -tc=WorkStealingExecutor)
add_test(eigen_work_stealing_executor ${TF_UTEST_DIR}/executor -tc=EigenWorkStealingExecutor)

# threadpool_cxx14 unittest (contributed by Glen Fraser)
add_executable(threadpool_cxx14_tmp unittest/threadpool_cxx14.cpp)
set_target_properties(threadpool_cxx14_tmp PROPERTIES CXX_STANDARD 14)
target_link_libraries(threadpool_cxx14_tmp Threads::Threads)
target_include_directories(threadpool_cxx14_tmp PRIVATE ${PROJECT_SOURCE_DIR}/doctest)
set_target_properties(threadpool_cxx14_tmp PROPERTIES OUTPUT_NAME "threadpool_cxx14")
add_test(threadpool_cxx14_basic ${TF_UTEST_DIR}/threadpool_cxx14 -tc=Threadpool.Basic)
add_test(threadpool_cxx14_wait_for_all ${TF_UTEST_DIR}/threadpool_cxx14 -tc=Threadpool.WaitForAll)

# run all examples

endif()

Expand Down Expand Up @@ -319,34 +280,8 @@ target_link_libraries(
)
set_target_properties(mnist PROPERTIES COMPILE_FLAGS ${OpenMP_CXX_FLAGS})

# Add benchmark command into Makefile
add_custom_target(benchmark
COMMAND wavefront
COMMAND graph_traversal
COMMAND mnist)
add_dependencies(benchmark wavefront graph_traversal mnist)

## benchmark 4: Framework
message(STATUS "benchmark 4: Framework")
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${TF_BENCHMARK_DIR}/framework)
add_executable(
framework_benchmarking
${TF_BENCHMARK_DIR}/framework/main.cpp
${TF_BENCHMARK_DIR}/framework/omp.cpp
${TF_BENCHMARK_DIR}/framework/tbb.cpp
${TF_BENCHMARK_DIR}/framework/seq.cpp
${TF_BENCHMARK_DIR}/framework/taskflow.cpp
)
target_include_directories(framework_benchmarking PRIVATE ${PROJECT_SOURCE_DIR}/3rd-party/CLI11)
target_link_libraries(
framework_benchmarking
${PROJECT_NAME} Threads::Threads ${TBB_IMPORTED_TARGETS} ${OpenMP_CXX_LIBRARIES}
)
set_target_properties(framework_benchmarking PROPERTIES COMPILE_FLAGS ${OpenMP_CXX_FLAGS})


## benchmark 5: Parallel DNN
message(STATUS "benchmark 5: Parallel DNN")
## benchmark 4: Parallel DNN
message(STATUS "benchmark 4: Parallel DNN")
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${TF_BENCHMARK_DIR}/parallel_dnn)
add_executable(
parallel_dnn
Expand All @@ -364,7 +299,6 @@ target_link_libraries(
)
set_target_properties(parallel_dnn PROPERTIES COMPILE_FLAGS ${OpenMP_CXX_FLAGS})


endif()

# -----------------------------------------------------------------------------
Expand Down
Loading

0 comments on commit 5a853d0

Please sign in to comment.