diff --git a/example/01_gemm/gemm_wmma_bf16_v3.cpp b/example/01_gemm/gemm_wmma_bf16_v3.cpp index 28b2123619..7c68b1582f 100644 --- a/example/01_gemm/gemm_wmma_bf16_v3.cpp +++ b/example/01_gemm/gemm_wmma_bf16_v3.cpp @@ -22,7 +22,7 @@ using CElementOp = PassThrough; static constexpr auto GemmDefault = ck::tensor_operation::device::GemmSpecialization::Default; // clang-format off -using DeviceGemmInstance = ck::tensor_operation::device::DeviceGemm_Wmma_CShuffleV3< +using DeviceGemmV2Instance = ck::tensor_operation::device::DeviceGemm_Wmma_CShuffleV3< ALayout, BLayout, CLayout, ADataType, BDataType, CDataType, AccDataType, CShuffleDataType, PassThrough, PassThrough, PassThrough, GemmDefault, @@ -42,18 +42,6 @@ using DeviceGemmInstance = ck::tensor_operation::device::DeviceGemm_Wmma_CShuffl using ReferenceGemmInstance = ck::tensor_operation::host:: ReferenceGemm; -using ReferenceGemmInstanceGPU = ck::tensor_operation::device::ReferenceGemm; - -#include "run_gemm_example.inc" - -int main(int argc, char* argv[]) { return !run_gemm_example(argc, argv); } +#include "run_gemm_example_v2.inc" +int main(int argc, char* argv[]) { return !run_gemm_splitk_example(argc, argv); } diff --git a/example/01_gemm/gemm_wmma_f16_v3.cpp b/example/01_gemm/gemm_wmma_f16_v3.cpp index e701ed29a4..73b42db567 100644 --- a/example/01_gemm/gemm_wmma_f16_v3.cpp +++ b/example/01_gemm/gemm_wmma_f16_v3.cpp @@ -22,7 +22,7 @@ using CElementOp = PassThrough; static constexpr auto GemmDefault = ck::tensor_operation::device::GemmSpecialization::Default; // clang-format off -using DeviceGemmInstance = ck::tensor_operation::device::DeviceGemm_Wmma_CShuffleV3< +using DeviceGemmV2Instance = ck::tensor_operation::device::DeviceGemm_Wmma_CShuffleV3< ALayout, BLayout, CLayout, ADataType, BDataType, CDataType, AccDataType, CShuffleDataType, PassThrough, PassThrough, PassThrough, GemmDefault, @@ -42,17 +42,6 @@ using DeviceGemmInstance = ck::tensor_operation::device::DeviceGemm_Wmma_CShuffl using ReferenceGemmInstance = ck::tensor_operation::host:: ReferenceGemm; -using ReferenceGemmInstanceGPU = ck::tensor_operation::device::ReferenceGemm; +#include "run_gemm_example_v2.inc" -#include "run_gemm_example.inc" - -int main(int argc, char* argv[]) { return !run_gemm_example(argc, argv); } +int main(int argc, char* argv[]) { return !run_gemm_splitk_example(argc, argv); } diff --git a/example/01_gemm/gemm_wmma_f8_bf16_v3.cpp b/example/01_gemm/gemm_wmma_f8_bf16_v3.cpp index 81b31da961..20ffe6fcdf 100644 --- a/example/01_gemm/gemm_wmma_f8_bf16_v3.cpp +++ b/example/01_gemm/gemm_wmma_f8_bf16_v3.cpp @@ -10,6 +10,8 @@ using BDataType = ck::f8_t; using AccDataType = float; using CShuffleDataType = ck::bhalf_t; using CDataType = ck::bhalf_t; +using ComputeTypeA = ck::f8_t; +using ComputeTypeB = ck::f8_t; using ALayout = Col; using BLayout = Row; @@ -22,37 +24,34 @@ using CElementOp = PassThrough; static constexpr auto GemmDefault = ck::tensor_operation::device::GemmSpecialization::Default; // clang-format off -using DeviceGemmInstance = ck::tensor_operation::device::DeviceGemm_Wmma_CShuffleV3< +using DeviceGemmV2Instance = ck::tensor_operation::device::DeviceGemm_Wmma_CShuffleV3< ALayout, BLayout, CLayout, ADataType, BDataType, CDataType, AccDataType, CShuffleDataType, PassThrough, PassThrough, PassThrough, GemmDefault, - 32, - 16, 16, - 64, 8, 8, + 128, + 64, 64, + 32, 8, 8, 16, 16, - 1, 1, - S<2, 16, 1>, S<1, 0, 2>, S<1, 0, 2>, - 2, 8, 8, 1, - S<2, 16, 1>, S<0, 2, 1>, S<0, 2, 1>, - 1, 1, 4, 0, 1, 1, - S<1, 16, 1, 2>, 8, - ck::BlockGemmPipelineScheduler::Intrawave,ck::BlockGemmPipelineVersion::v3>; + 2, 2, + S<4, 32, 1>, S<1, 0, 2>, S<1, 0, 2>, + 2, 8, 8, 0, + S<4, 32, 1>, S<0, 2, 1>, S<0, 2, 1>, + 1, 2, 4, 1, 1, 1, + S<1, 32, 1, 2>, 8, + ck::BlockGemmPipelineScheduler::Intrawave,ck::BlockGemmPipelineVersion::v3, ComputeTypeA, ComputeTypeB>; // clang-format on -using ReferenceGemmInstance = ck::tensor_operation::host:: - ReferenceGemm; +using ReferenceComputeType = ck::f8_t; +using ReferenceGemmInstance = ck::tensor_operation::host::ReferenceGemm; -using ReferenceGemmInstanceGPU = ck::tensor_operation::device::ReferenceGemm; +#include "run_gemm_example_v2.inc" -#include "run_gemm_example.inc" - -int main(int argc, char* argv[]) { return !run_gemm_example(argc, argv); } +int main(int argc, char* argv[]) { return !run_gemm_splitk_example(argc, argv); }