mirror of
https://github.com/ROCm/composable_kernel.git
synced 2026-04-20 06:49:15 +00:00
* Implement multiple-reduction in one kernel (kernels, device ops, examples) * Add generic elementwise kernel and device interface * Add generator for normal-distributed data initialization * Add host refer implementation of batchnorm-forward and batchnorm-infer * Add examples for implementing batchnorm-forward and batchnorm-infer using generic kernels * Remove un-needed including in batchnorm example * Renaming generic_elementwise to elementiwise in kernel and device classes/functions * Change in gemm_layernorm examples to use DeviceElementwise instead of Device5AryElementwise * Change in exampe 19_binary_elementwise to use DeviceElementwise instead of DeviceBinaryElementwise * Change in device_cgemm_4gemm_xdl_cshuffle.hpp to use kernel_elementwise instead of kernel_binary_elementwise * Add DeviceElementwiseBase and use it in device_normalize_instance.cpp * Removing and renaming files * Update to synchronize gemm_layernorm client example to the generic element-wise device op API * Update to synchronize with the latest headers directory and HostTensorDescriptor interface renaming * Merge two static member functions in device_elementwise.hpp * Remove unary_elementwise_1d kernel and device
53 lines
1.9 KiB
CMake
53 lines
1.9 KiB
CMake
include_directories(BEFORE
|
|
${PROJECT_SOURCE_DIR}/include
|
|
${PROJECT_SOURCE_DIR}/library/include
|
|
)
|
|
|
|
add_custom_target(examples)
|
|
|
|
function(add_example_executable EXAMPLE_NAME FILE_NAME)
|
|
message("adding example ${EXAMPLE_NAME}")
|
|
add_executable(${EXAMPLE_NAME} ${FILE_NAME})
|
|
target_link_libraries(${EXAMPLE_NAME} PRIVATE utility)
|
|
add_test(NAME ${EXAMPLE_NAME} COMMAND $<TARGET_FILE:${EXAMPLE_NAME}> ${ARGN})
|
|
add_dependencies(examples ${EXAMPLE_NAME})
|
|
add_dependencies(check ${EXAMPLE_NAME})
|
|
endfunction(add_example_executable EXAMPLE_NAME)
|
|
|
|
function(add_example_executable_no_testing EXAMPLE_NAME FILE_NAME)
|
|
message("adding example ${EXAMPLE_NAME}")
|
|
add_executable(${EXAMPLE_NAME} ${FILE_NAME})
|
|
target_link_libraries(${EXAMPLE_NAME} PRIVATE utility)
|
|
add_dependencies(examples ${EXAMPLE_NAME})
|
|
endfunction(add_example_executable_no_testing EXAMPLE_NAME)
|
|
|
|
add_subdirectory(01_gemm)
|
|
add_subdirectory(02_gemm_bilinear)
|
|
add_subdirectory(03_gemm_bias_relu)
|
|
add_subdirectory(04_gemm_add_add_fastgelu)
|
|
add_subdirectory(09_convnd_fwd)
|
|
add_subdirectory(12_reduce)
|
|
add_subdirectory(13_pool2d_fwd)
|
|
add_subdirectory(14_gemm_xdl_requant_relu_requant)
|
|
add_subdirectory(15_grouped_gemm)
|
|
add_subdirectory(16_gemm_multi_d_multi_reduces)
|
|
add_subdirectory(17_convnd_bwd_data)
|
|
add_subdirectory(18_batched_gemm_reduce)
|
|
add_subdirectory(19_binary_elementwise)
|
|
add_subdirectory(20_convnd_bwd_weight)
|
|
add_subdirectory(21_gemm_layernorm)
|
|
add_subdirectory(22_cgemm)
|
|
add_subdirectory(23_softmax)
|
|
add_subdirectory(24_batched_gemm_e_permute)
|
|
add_subdirectory(25_gemm_bias_e_permute)
|
|
add_subdirectory(26_contraction)
|
|
add_subdirectory(27_layernorm)
|
|
add_subdirectory(28_grouped_gemm_bias_e_permute)
|
|
add_subdirectory(29_batched_gemm_bias_e_permute)
|
|
add_subdirectory(30_grouped_convnd_fwd_bias_relu_add)
|
|
add_subdirectory(31_batched_gemm_gemm)
|
|
add_subdirectory(32_batched_gemm_softmax_gemm)
|
|
add_subdirectory(33_multiple_reduce)
|
|
add_subdirectory(34_batchnorm)
|
|
|