Files
Raptor/test/PIM/CMakeLists.txt
T
NiccoloN a77edafcbf
Validate Operations / validate-operations (push) Has been cancelled
even better more structured throughput scheduling
plot adjustments
validation adjustments
2026-10-27 17:46:46 +01:00

115 lines
3.9 KiB
CMake

add_custom_target(pim-unittest)
set_target_properties(pim-unittest PROPERTIES FOLDER "Tests")
add_custom_target(check-pim-unittest
COMMENT "Running the PIM unit tests"
COMMAND "${CMAKE_CTEST_COMMAND}" -L pim-unittest --output-on-failure -C $<CONFIG> --force-new-ctest-process
USES_TERMINAL
DEPENDS pim-unittest
)
set_target_properties(check-pim-unittest PROPERTIES FOLDER "Tests")
set_target_properties(check-pim-unittest PROPERTIES EXCLUDE_FROM_DEFAULT_BUILD ON)
function(add_pim_unittest test_name)
add_onnx_mlir_executable(${test_name} NO_INSTALL ${ARGN})
add_dependencies(pim-unittest ${test_name})
get_target_property(test_suite_folder pim-unittest FOLDER)
if (test_suite_folder)
set_property(TARGET ${test_name} PROPERTY FOLDER "${test_suite_folder}")
endif ()
add_test(NAME ${test_name} COMMAND ${test_name} WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
set_tests_properties(${test_name} PROPERTIES LABELS pim-unittest)
endfunction()
add_pim_unittest(PimMemoryLivenessPlannerTest
PimMemoryLivenessPlannerTest.cpp
LINK_LIBS PRIVATE
OMPimCompilerUtils
)
add_pim_unittest(CopyAccessPlanTest
CopyAccessPlanTest.cpp
LINK_LIBS PRIVATE OMPimCompilerUtils
)
add_test(NAME CopyAccessPlanChecksActive COMMAND CopyAccessPlanTest --check-failure)
set_tests_properties(CopyAccessPlanChecksActive PROPERTIES WILL_FAIL TRUE LABELS pim-unittest)
add_test(NAME RowMajorStrideOverflow
COMMAND "${PYTHON_EXECUTABLE}" "${CMAKE_CURRENT_SOURCE_DIR}/test_ShapeUtils.py"
--test "$<TARGET_FILE:CopyAccessPlanTest>")
set_tests_properties(RowMajorStrideOverflow PROPERTIES LABELS pim-unittest)
add_pim_unittest(ComputeInputMaterializationTest
ComputeInputMaterializationTest.cpp
LINK_LIBS PRIVATE OMPimCompilerUtils
)
add_pim_unittest(ProjectionMemoryCostTest
ProjectionMemoryCostTest.cpp
LINK_LIBS PRIVATE OMPimCompilerUtils
)
add_pim_unittest(PimAbstractExecutionTest
PimAbstractExecutionTest.cpp
LINK_LIBS PRIVATE OMPimCompilerUtils
)
add_pim_unittest(PipelineOptimizerTest
PipelineOptimizerTest.cpp
LINK_LIBS PRIVATE OMPimCompilerUtils
)
add_pim_unittest(SpatialSchedulingTargetTest
SpatialSchedulingTargetTest.cpp
LINK_LIBS PRIVATE
OMPimCompilerUtils
)
add_pim_unittest(PeriodicDependenciesTest
PeriodicDependenciesTest.cpp
LINK_LIBS PRIVATE
OMPimCompilerUtils
)
add_test(
NAME PimHostReuseSynchronizationTest
COMMAND "${PYTHON_EXECUTABLE}"
"${CMAKE_CURRENT_SOURCE_DIR}/test_HostPublication.py"
--compiler "$<TARGET_FILE:onnx-mlir>"
)
set_tests_properties(PimHostReuseSynchronizationTest PROPERTIES LABELS pim-unittest)
add_test(NAME PimTargetConfigTest
COMMAND "${PYTHON_EXECUTABLE}" "${CMAKE_CURRENT_SOURCE_DIR}/test_PimTargetConfig.py"
--compiler "$<TARGET_FILE:onnx-mlir>")
set_tests_properties(PimTargetConfigTest PROPERTIES LABELS pim-unittest)
add_test(NAME PimPeriodicInstructionTest
COMMAND "${PYTHON_EXECUTABLE}" "${CMAKE_CURRENT_SOURCE_DIR}/test_PimPeriodicDiagnostic.py"
--diagnostic "$<TARGET_FILE:raptor-periodic>")
set_tests_properties(PimPeriodicInstructionTest PROPERTIES LABELS pim-unittest)
add_dependencies(pim-unittest raptor-periodic)
add_test(NAME PimQueueSelectionTest
COMMAND "${PYTHON_EXECUTABLE}" "${CMAKE_CURRENT_SOURCE_DIR}/test_QueueSelection.py"
--compiler "$<TARGET_FILE:onnx-mlir>")
set_tests_properties(PimQueueSelectionTest PROPERTIES LABELS pim-unittest)
add_test(NAME PimEmissionTest
COMMAND "${PYTHON_EXECUTABLE}" "${CMAKE_CURRENT_SOURCE_DIR}/test_PimEmission.py"
--compiler "$<TARGET_FILE:onnx-mlir>")
set_tests_properties(PimEmissionTest PROPERTIES LABELS pim-unittest)
add_pim_unittest(PimPipelineSelectionTest
PimPipelineSelectionTest.cpp
LINK_LIBS PRIVATE OMPimCompilerUtils
)
add_test(NAME PimSpatialSelectionTest
COMMAND "${PYTHON_EXECUTABLE}" "${CMAKE_CURRENT_SOURCE_DIR}/test_PimSpatialSelection.py"
--compiler "$<TARGET_FILE:onnx-mlir>")
set_tests_properties(PimSpatialSelectionTest PROPERTIES LABELS pim-unittest)