mirror of
https://github.com/ROCm/composable_kernel.git
synced 2026-05-24 14:54:47 +00:00
* Add groupnorm example by layernorm
1. Reference is not ready
2. shape of gamma and beta need to be fix
* Let shape of gamma and beta can be same as x
* Modify test, instance and client example
* [What] Fix bug of layernorm for greater than 2 dimension.
[Why] We need to get upper length from merge transform instead of embed transform.
* Add reference for groupnorm
* Fuse sigmoid after groupnorm
* [What] Rename original layernorm into layernorm2d
[Why] Prepare to add groupnorm using layernorm5d
* clang-format
* Add groupnorm test
* Refine error message
* Add groupnorm ckProfiler
* Test groupnorm kernel from device_instance
* update example
* upadte profiler
* Fix test naming
* Fix argc number
* Move descriptor and sweeponce to argument for quick debugging
Co-authored-by: Chao Liu <chao.liu2@amd.com>
[ROCm/composable_kernel commit: 4eba345f6e]
59 lines
2.8 KiB
CMake
59 lines
2.8 KiB
CMake
include_directories(BEFORE
|
|
${PROJECT_SOURCE_DIR}/
|
|
)
|
|
|
|
# ck_profiler
|
|
set(PROFILER_SOURCE
|
|
src/profiler.cpp
|
|
src/profile_gemm.cpp
|
|
src/profile_gemm_splitk.cpp
|
|
src/profile_gemm_bilinear.cpp
|
|
src/profile_gemm_bias_add_reduce.cpp
|
|
src/profile_gemm_add_add_fastgelu.cpp
|
|
src/profile_gemm_reduce.cpp
|
|
src/profile_batched_gemm.cpp
|
|
src/profile_batched_gemm_gemm.cpp
|
|
src/profile_batched_gemm_add_relu_gemm_add.cpp
|
|
src/profile_batched_gemm_reduce.cpp
|
|
src/profile_grouped_gemm.cpp
|
|
src/profile_conv_fwd.cpp
|
|
src/profile_conv_fwd_bias_relu.cpp
|
|
src/profile_conv_fwd_bias_relu_add.cpp
|
|
src/profile_conv_bwd_data.cpp
|
|
src/profile_conv_bwd_weight.cpp
|
|
src/profile_grouped_conv_fwd.cpp
|
|
src/profile_reduce.cpp
|
|
src/profile_groupnorm.cpp
|
|
src/profile_layernorm.cpp
|
|
src/profile_normalization.cpp
|
|
)
|
|
|
|
add_executable(ckProfiler ${PROFILER_SOURCE})
|
|
|
|
target_link_libraries(ckProfiler PRIVATE utility)
|
|
target_link_libraries(ckProfiler PRIVATE device_gemm_instance)
|
|
target_link_libraries(ckProfiler PRIVATE device_gemm_splitk_instance)
|
|
target_link_libraries(ckProfiler PRIVATE device_gemm_bilinear_instance)
|
|
target_link_libraries(ckProfiler PRIVATE device_gemm_add_add_fastgelu_instance)
|
|
target_link_libraries(ckProfiler PRIVATE device_gemm_reduce_instance)
|
|
target_link_libraries(ckProfiler PRIVATE device_gemm_bias_add_reduce_instance)
|
|
target_link_libraries(ckProfiler PRIVATE device_batched_gemm_instance)
|
|
target_link_libraries(ckProfiler PRIVATE device_batched_gemm_gemm_instance)
|
|
target_link_libraries(ckProfiler PRIVATE device_batched_gemm_add_relu_gemm_add_instance)
|
|
target_link_libraries(ckProfiler PRIVATE device_batched_gemm_reduce_instance)
|
|
target_link_libraries(ckProfiler PRIVATE device_grouped_gemm_instance)
|
|
target_link_libraries(ckProfiler PRIVATE device_conv2d_fwd_instance)
|
|
target_link_libraries(ckProfiler PRIVATE device_grouped_conv1d_fwd_instance)
|
|
target_link_libraries(ckProfiler PRIVATE device_grouped_conv2d_fwd_instance)
|
|
target_link_libraries(ckProfiler PRIVATE device_grouped_conv3d_fwd_instance)
|
|
target_link_libraries(ckProfiler PRIVATE device_conv1d_bwd_data_instance)
|
|
target_link_libraries(ckProfiler PRIVATE device_conv2d_bwd_data_instance)
|
|
target_link_libraries(ckProfiler PRIVATE device_conv3d_bwd_data_instance)
|
|
target_link_libraries(ckProfiler PRIVATE device_conv1d_bwd_weight_instance)
|
|
target_link_libraries(ckProfiler PRIVATE device_conv2d_bwd_weight_instance)
|
|
target_link_libraries(ckProfiler PRIVATE device_conv3d_bwd_weight_instance)
|
|
target_link_libraries(ckProfiler PRIVATE device_conv2d_fwd_bias_relu_instance)
|
|
target_link_libraries(ckProfiler PRIVATE device_conv2d_fwd_bias_relu_add_instance)
|
|
target_link_libraries(ckProfiler PRIVATE device_normalization_instance)
|
|
target_link_libraries(ckProfiler PRIVATE device_reduce_instance)
|