Skip to content
Snippets Groups Projects
Commit 6933a73c authored by Yifan Zhao's avatar Yifan Zhao
Browse files

Fixed a dependency order issue between CMake targets

parent bd1a3361
No related branches found
No related tags found
No related merge requests found
# First get approxhpvm.py which we then use to compile benchmarks. # First get approxhpvm.py which we then use to compile benchmarks.
get_filename_component(APPROXHPVM_PY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/approxhpvm.py REALPATH) get_filename_component(APPROXHPVM_PY ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/approxhpvm.py REALPATH)
# --[ llvm-lit test setup
# lit.cfg.py looks for tests in CMAKE_CURRENT_BINARY_DIR (see lit.cfg.py)
# as most of the tests require some kind of compilation / generation
# which is best done over there.
configure_lit_site_cfg(
../../lit.site.cfg.py.in
${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg.py
MAIN_CONFIG
${CMAKE_CURRENT_SOURCE_DIR}/lit.cfg.py
)
add_lit_testsuite(check-hpvm-dnn "Running HPVM DNNs"
${CMAKE_CURRENT_BINARY_DIR}
DEPENDS dnn_benchmarks # Compile all dnn benchmarks to run them
ARGS "-j1" # Run DNN benchmarks sequentially
)
# Install an accuracy comparator under build/bin
set(BIN_DIR ${LLVM_BINARY_DIR}/${LLVM_TOOLS_INSTALL_DIR})
add_custom_command(
OUTPUT ${BIN_DIR}/check_dnn_acc.py
COMMAND cp ${CMAKE_CURRENT_SOURCE_DIR}/check_dnn_acc.py ${BIN_DIR}
COMMAND chmod +x ${BIN_DIR}/check_dnn_acc.py
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/check_dnn_acc.py
)
# Each source file contains a @MODEL_PARAMS_DIR@ waiting to be filled in. # Each source file contains a @MODEL_PARAMS_DIR@ waiting to be filled in.
set(MODEL_PARAMS_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../model_params/") set(MODEL_PARAMS_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../model_params/")
set(test_compile_targets "") set(test_compile_targets "")
...@@ -71,6 +47,32 @@ foreach(dir ${entries}) ...@@ -71,6 +47,32 @@ foreach(dir ${entries})
hpvm_add_dnn_test(${dirname}_cudnn) hpvm_add_dnn_test(${dirname}_cudnn)
endforeach(dir) endforeach(dir)
# Install an accuracy comparator under build/bin for test suite.
set(BIN_DIR ${LLVM_BINARY_DIR}/${LLVM_TOOLS_INSTALL_DIR})
message("BIN_DIR = ${BIN_DIR}")
add_custom_command(
OUTPUT ${BIN_DIR}/check_dnn_acc.py
COMMAND cp ${CMAKE_CURRENT_SOURCE_DIR}/check_dnn_acc.py ${BIN_DIR}
COMMAND chmod +x ${BIN_DIR}/check_dnn_acc.py
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/check_dnn_acc.py
)
message(STATUS "List of HPVM-C DNN benchmarks: ${test_compile_targets}") message(STATUS "List of HPVM-C DNN benchmarks: ${test_compile_targets}")
add_custom_target(dnn_benchmarks DEPENDS ${test_compile_targets} ${BIN_DIR}/check_dnn_acc.py) add_custom_target(dnn_benchmarks DEPENDS ${test_compile_targets} ${BIN_DIR}/check_dnn_acc.py)
message(STATUS "Target name for compiling all DNN benchmarks: dnn_benchmarks") message(STATUS "Target name for compiling all DNN benchmarks: dnn_benchmarks")
# --[ llvm-lit test setup
# lit.cfg.py looks for tests in CMAKE_CURRENT_BINARY_DIR (see lit.cfg.py)
# as most of the tests require some kind of compilation / generation
# which is best done over there.
configure_lit_site_cfg(
../../lit.site.cfg.py.in
${CMAKE_CURRENT_BINARY_DIR}/lit.site.cfg.py
MAIN_CONFIG
${CMAKE_CURRENT_SOURCE_DIR}/lit.cfg.py
)
add_lit_testsuite(check-hpvm-dnn "Running HPVM DNNs"
${CMAKE_CURRENT_BINARY_DIR}
DEPENDS dnn_benchmarks # Compile all dnn benchmarks to run them
ARGS "-j1" # Run DNN benchmarks sequentially
)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment