CodeQL / Analyze (actions) (push) Canceled after 0s
CodeQL / Analyze (python) (push) Canceled after 0s
pre-commit / pre-commit (push) Canceled after 0s
Multi-Arch CI / setup (push) Canceled after 0s
Publish build_manylinux_x86_64 images / publish_build_manylinux_x86_64 (push) Canceled after 0s
Setup (Multi-Arch) / setup (push) Canceled after 0s
Multi-Arch CI / Linux::${{ fromJSON(needs.setup.outputs.linux_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubi10 image / publish_no_rocm_image_ubi10 (push) Canceled after 0s
Multi-Arch CI / Windows::${{ fromJSON(needs.setup.outputs.windows_build_config || '{}').build_variant_label || 'skip' }} (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Multi-Arch CI / Manifest Diff (push) Canceled after 0s
TheRock Manifest Diff Report / Generate Manifest Diff Report (push) Canceled after 0s
Multi-Arch CI / CI Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_ocl_rt images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04_rocgdb images / publish_no_rocm_image_ubuntu24_04_rocgdb (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_ocl_rt (push) Canceled after 0s
Publish TheRock Docker image / build-and-push-image (push) Canceled after 0s
Unit Tests / Unit Tests :: ubuntu-24.04 (push) Canceled after 0s
Unit Tests / Unit Tests :: windows-2022 (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_media (push) Canceled after 0s
Unit Tests / Unit Tests Summary (push) Canceled after 0s
Publish no_rocm_image_ubuntu24_04 images / publish_no_rocm_image_ubuntu24_04_openmpi (push) Canceled after 0s
190 lines
8.5 KiB
CMake
190 lines
8.5 KiB
CMake
# Copyright © Advanced Micro Devices, Inc., or its affiliates.
|
|
# SPDX-License-Identifier: MIT
|
|
|
|
include(GoogleTest)
|
|
find_package(hip REQUIRED)
|
|
find_package(Threads REQUIRED)
|
|
|
|
add_executable(
|
|
hipdnn_public_frontend_tests
|
|
main.cpp
|
|
IntegrationHipdnnDirectBackendWrapper.cpp
|
|
IntegrationBatchnormBackwardDescriptorLifting.cpp
|
|
IntegrationBatchnormBackwardDescriptorLowering.cpp
|
|
IntegrationBatchnormDescriptorLifting.cpp
|
|
IntegrationBatchnormDescriptorLowering.cpp
|
|
IntegrationBatchnormForwardInference.cpp
|
|
IntegrationBatchnormForwardInferenceVarianceExt.cpp
|
|
IntegrationBatchnormInferenceDescriptorLifting.cpp
|
|
IntegrationBatchnormInferenceDescriptorLowering.cpp
|
|
IntegrationBatchnormInferenceNodeVarianceExtDescriptorLifting.cpp
|
|
IntegrationBatchnormInferenceNodeVarianceExtDescriptorLowering.cpp
|
|
IntegrationBlockScaleDequantize.cpp
|
|
IntegrationBlockScaleDequantizeDescriptorLifting.cpp
|
|
IntegrationBlockScaleDequantizeDescriptorLowering.cpp
|
|
IntegrationBlockScaleQuantize.cpp
|
|
IntegrationBlockScaleQuantizeDescriptorLifting.cpp
|
|
IntegrationBlockScaleQuantizeDescriptorLowering.cpp
|
|
IntegrationConvForward.cpp
|
|
IntegrationConvFpropDescriptorLifting.cpp
|
|
IntegrationConvFpropDescriptorLowering.cpp
|
|
IntegrationConvolutionBackwardData.cpp
|
|
IntegrationConvolutionBackwardWeight.cpp
|
|
IntegrationConvolutionDgradDescriptorLowering.cpp
|
|
IntegrationConvolutionDgradDescriptorLifting.cpp
|
|
IntegrationConvolutionWgradDescriptorLifting.cpp
|
|
IntegrationConvolutionWgradDescriptorLowering.cpp
|
|
IntegrationCustomOpDescriptorLifting.cpp
|
|
IntegrationCustomOpDescriptorLowering.cpp
|
|
IntegrationFrontendUserLogging.cpp
|
|
IntegrationGraphEngineFiltering.cpp
|
|
IntegrationGraphKnobsApi.cpp
|
|
IntegrationGraphKnobSettingsDescriptorLowering.cpp
|
|
IntegrationGraphKnobsDescriptorLifting.cpp
|
|
IntegrationGraphLifting.cpp
|
|
IntegrationGraphSupportCheck.cpp
|
|
IntegrationHeuristicPolicyEnumeration.cpp
|
|
IntegrationLayerNormDescriptorLifting.cpp
|
|
IntegrationLayerNormDescriptorLowering.cpp
|
|
IntegrationLayernormForward.cpp
|
|
IntegrationLayernormBackward.cpp
|
|
IntegrationLayernormBackwardDescriptorLowering.cpp
|
|
IntegrationLayernormBackwardDescriptorLifting.cpp
|
|
IntegrationMalformedVersionPlugin.cpp
|
|
IntegrationMatmul.cpp
|
|
IntegrationMatmulDescriptorLifting.cpp
|
|
IntegrationMatmulDescriptorLowering.cpp
|
|
IntegrationPointwiseDescriptorLifting.cpp
|
|
IntegrationPointwiseDescriptorLowering.cpp
|
|
IntegrationRaggedTensorDescriptorLowering.cpp
|
|
IntegrationPassByValueVersionFilter.cpp
|
|
IntegrationPassByValueDelivery.cpp
|
|
IntegrationResampleFwdDescriptorLifting.cpp
|
|
IntegrationResampleFwdDescriptorLowering.cpp
|
|
IntegrationReductionDescriptorLifting.cpp
|
|
IntegrationReductionDescriptorLowering.cpp
|
|
IntegrationRMSNormDescriptorLifting.cpp
|
|
IntegrationRMSNormDescriptorLowering.cpp
|
|
IntegrationRMSNormForward.cpp
|
|
IntegrationRMSNormBackwardDescriptorLowering.cpp
|
|
IntegrationRMSNormBackwardDescriptorLifting.cpp
|
|
IntegrationAutotuneCompiledPlanPath.cpp
|
|
IntegrationAutotuneConfigRoundTrip.cpp
|
|
IntegrationAutotuneConfigRoundTripUnsupportedOp.cpp
|
|
IntegrationAutotuneEndToEnd.cpp
|
|
IntegrationAutotuneExhaustive.cpp
|
|
IntegrationAutotunePersistence.cpp
|
|
IntegrationSetPluginPathsExt.cpp
|
|
# cuDNN-compatibility shim integration coverage
|
|
# only built when the shim is enabled.
|
|
$<$<BOOL:${HIPDNN_ENABLE_CUDNN_COMPATIBILITY}>:IntegrationCudnnShimUmbrella.cpp>
|
|
$<$<BOOL:${HIPDNN_ENABLE_CUDNN_COMPATIBILITY}>:IntegrationCudnnShimHandle.cpp>
|
|
$<$<BOOL:${HIPDNN_ENABLE_SDPA}>:IntegrationOverrideExecute.cpp>
|
|
$<$<BOOL:${HIPDNN_ENABLE_SDPA}>:IntegrationOverrideValidation.cpp>
|
|
$<$<BOOL:${HIPDNN_ENABLE_SDPA}>:IntegrationTestPluginInfrastructure.cpp>
|
|
$<$<BOOL:${HIPDNN_ENABLE_SDPA}>:IntegrationSdpaBwdDescriptorLowering.cpp>
|
|
$<$<BOOL:${HIPDNN_ENABLE_SDPA}>:IntegrationSdpaBwdLifting.cpp>
|
|
$<$<BOOL:${HIPDNN_ENABLE_SDPA}>:IntegrationSdpaFwdDescriptorLifting.cpp>
|
|
$<$<BOOL:${HIPDNN_ENABLE_SDPA}>:IntegrationSdpaFwdDescriptorLowering.cpp>
|
|
)
|
|
|
|
target_compile_options(hipdnn_public_frontend_tests PRIVATE ${HIPDNN_WARNING_COMPILE_OPTIONS})
|
|
target_link_libraries(
|
|
hipdnn_public_frontend_tests
|
|
GTest::gtest
|
|
GTest::gtest_main
|
|
Threads::Threads
|
|
hipdnn_test_sdk
|
|
hipdnn_backend
|
|
hipdnn_plugin_sdk
|
|
hip::host
|
|
${CMAKE_DL_LIBS}
|
|
)
|
|
|
|
# configures an integration test target that consumes the hipdnn_frontend library
|
|
# or the hipdnn_frontend_dynamic library
|
|
function(configure_hipdnn_public_frontend_test_target TARGET_NAME)
|
|
target_include_directories(${TARGET_NAME} PRIVATE ${HIPDNN_TEST_INCLUDE_DIRS})
|
|
|
|
target_compile_definitions(
|
|
${TARGET_NAME}
|
|
PRIVATE TEST_GOOD_PLUGIN_NAME="${TEST_GOOD_PLUGIN_NAME}"
|
|
TEST_EXECUTE_FAILS_PLUGIN_NAME="${TEST_EXECUTE_FAILS_PLUGIN_NAME}"
|
|
TEST_NO_APPLICABLE_ENGINES_A_PLUGIN_NAME="${TEST_NO_APPLICABLE_ENGINES_A_PLUGIN_NAME}"
|
|
TEST_NO_APPLICABLE_ENGINES_B_PLUGIN_NAME="${TEST_NO_APPLICABLE_ENGINES_B_PLUGIN_NAME}"
|
|
TEST_DUPLICATE_ID_A_PLUGIN_NAME="${TEST_DUPLICATE_ID_A_PLUGIN_NAME}"
|
|
TEST_DUPLICATE_ID_B_PLUGIN_NAME="${TEST_DUPLICATE_ID_B_PLUGIN_NAME}"
|
|
TEST_INCOMPLETE_API_PLUGIN_NAME="${TEST_INCOMPLETE_API_PLUGIN_NAME}"
|
|
TEST_GOOD_DEFAULT_PLUGIN_NAME="${TEST_GOOD_DEFAULT_PLUGIN_NAME}"
|
|
TEST_KNOBS_PLUGIN_NAME="${TEST_KNOBS_PLUGIN_NAME}"
|
|
TEST_KNOB_CONSTRAINT_VALIDATION_PLUGIN_NAME="${TEST_KNOB_CONSTRAINT_VALIDATION_PLUGIN_NAME}"
|
|
TEST_INCOMPATIBLE_VERSION_PLUGIN_NAME="${TEST_INCOMPATIBLE_VERSION_PLUGIN_NAME}"
|
|
TEST_OVERRIDE_IMPLEMENTING_PLUGIN_NAME="${HIPDNN_TEST_OVERRIDE_IMPLEMENTING_PLUGIN_TARGET}"
|
|
TEST_OVERRIDE_OMITTING_PLUGIN_NAME="${HIPDNN_TEST_OVERRIDE_OMITTING_PLUGIN_TARGET}"
|
|
TEST_VERSION_LIAR_PLUGIN_NAME="${HIPDNN_TEST_VERSION_LIAR_PLUGIN_TARGET}"
|
|
TEST_SECOND_OVERRIDE_PLUGIN_NAME="${HIPDNN_TEST_SECOND_OVERRIDE_PLUGIN_TARGET}"
|
|
TEST_MALFORMED_VERSION_PLUGIN_NAME="${HIPDNN_TEST_MALFORMED_VERSION_PLUGIN_TARGET}"
|
|
TEST_VERSION_ZERO_PLUGIN_NAME="${HIPDNN_TEST_VERSION_ZERO_PLUGIN_TARGET}"
|
|
TEST_PASS_BY_VALUE_PLUGIN_NAME="${HIPDNN_TEST_PASS_BY_VALUE_PLUGIN_TARGET}"
|
|
TEST_PASS_BY_VALUE_RECORDER_PLUGIN_NAME="${HIPDNN_TEST_PASS_BY_VALUE_RECORDER_PLUGIN_TARGET}"
|
|
TEST_GOOD_HEURISTIC_PLUGIN_NAME="${TEST_GOOD_HEURISTIC_PLUGIN_NAME}"
|
|
TEST_AUTOTUNE_PLUGIN_NAME="${TEST_AUTOTUNE_PLUGIN_NAME}"
|
|
)
|
|
|
|
# Ensure test plugins are built before tests
|
|
add_dependencies(
|
|
${TARGET_NAME}
|
|
${TEST_GOOD_PLUGIN_NAME}
|
|
${TEST_GOOD_DEFAULT_PLUGIN_NAME}
|
|
${TEST_EXECUTE_FAILS_PLUGIN_NAME}
|
|
${TEST_NO_APPLICABLE_ENGINES_A_PLUGIN_NAME}
|
|
${TEST_NO_APPLICABLE_ENGINES_B_PLUGIN_NAME}
|
|
${TEST_DUPLICATE_ID_A_PLUGIN_NAME}
|
|
${TEST_DUPLICATE_ID_B_PLUGIN_NAME}
|
|
${TEST_INCOMPLETE_API_PLUGIN_NAME}
|
|
${TEST_KNOBS_PLUGIN_NAME}
|
|
${TEST_KNOB_CONSTRAINT_VALIDATION_PLUGIN_NAME}
|
|
# Override-execute fake plugins.
|
|
${HIPDNN_TEST_OVERRIDE_IMPLEMENTING_PLUGIN_TARGET}
|
|
${HIPDNN_TEST_OVERRIDE_OMITTING_PLUGIN_TARGET}
|
|
${HIPDNN_TEST_VERSION_LIAR_PLUGIN_TARGET}
|
|
${HIPDNN_TEST_SECOND_OVERRIDE_PLUGIN_TARGET}
|
|
${HIPDNN_TEST_MALFORMED_VERSION_PLUGIN_TARGET}
|
|
${HIPDNN_TEST_VERSION_ZERO_PLUGIN_TARGET}
|
|
${HIPDNN_TEST_PASS_BY_VALUE_PLUGIN_TARGET}
|
|
${HIPDNN_TEST_PASS_BY_VALUE_RECORDER_PLUGIN_TARGET}
|
|
${TEST_GOOD_HEURISTIC_PLUGIN_NAME}
|
|
test_autotune_plugin
|
|
)
|
|
endfunction()
|
|
|
|
configure_hipdnn_public_frontend_test_target(hipdnn_public_frontend_tests)
|
|
|
|
clang_tidy_check(hipdnn_public_frontend_tests)
|
|
add_hipdnn_test(hipdnn_public_frontend_tests ${CMAKE_CURRENT_BINARY_DIR})
|
|
|
|
add_executable(
|
|
hipdnn_public_frontend_dynamic_load_tests
|
|
main_dynamic.cpp
|
|
IntegrationHipdnnDynamicBackendWrapper.cpp
|
|
)
|
|
|
|
target_compile_options(
|
|
hipdnn_public_frontend_dynamic_load_tests PRIVATE ${HIPDNN_WARNING_COMPILE_OPTIONS}
|
|
)
|
|
target_link_libraries(
|
|
hipdnn_public_frontend_dynamic_load_tests
|
|
GTest::gtest
|
|
Threads::Threads
|
|
hipdnn_test_sdk_dynamic
|
|
hipdnn_plugin_sdk
|
|
hip::host
|
|
${CMAKE_DL_LIBS}
|
|
)
|
|
|
|
configure_hipdnn_public_frontend_test_target(hipdnn_public_frontend_dynamic_load_tests)
|
|
add_dependencies(hipdnn_public_frontend_dynamic_load_tests hipdnn_backend)
|
|
|
|
clang_tidy_check(hipdnn_public_frontend_dynamic_load_tests)
|
|
add_hipdnn_test(hipdnn_public_frontend_dynamic_load_tests ${CMAKE_CURRENT_BINARY_DIR})
|