mirror of
https://github.com/ROCm/composable_kernel.git
synced 2026-05-12 17:26:00 +00:00
* ad gelu and fast_gelu * added GeLU and fast GeLU * clean up * add gemm+fastgelu example * add gemm+gelu instances * update profiler * clean up * clean up * adding gemm+bias+activation * clean * adding bias * clean * adding gemm multiple d * debugging * add gemm bias add fastgelu * rename, clean * refactoring; add readme * refactor * refactor * refactor * refactor * refactor * refactor * fix * fix * update example * update example * rename * update example * add ckProfiler * clean * clean * clean * clean * add client app example * update readme * delete obselete files * remove old client app * delete old file * cleaning * clean * remove half * fix header path * fix header path * fix header path * fix header path * fix header path * fix header path for all examples * fix header path * fix header path * fix header path * fix header path * fix header path * fix header path * fix header path * fix header path * fix header path * revert client app example * clean build * fix build * temporary disable client test on Jenkins * clean * clean * clean
42 lines
1.3 KiB
C++
42 lines
1.3 KiB
C++
#include <iostream>
|
|
|
|
#include "profiler/include/profile_batched_gemm_impl.hpp"
|
|
|
|
namespace {
|
|
using ADataType = ck::half_t;
|
|
using BDataType = ck::half_t;
|
|
using CDataType = ck::half_t;
|
|
|
|
using Row = ck::tensor_layout::gemm::RowMajor;
|
|
using Col = ck::tensor_layout::gemm::ColumnMajor;
|
|
} // namespace
|
|
|
|
int main()
|
|
{
|
|
int M = 512;
|
|
int N = 256;
|
|
int K = 128;
|
|
int BatchCount = 3;
|
|
|
|
bool pass = true;
|
|
|
|
pass = pass &&
|
|
ck::profiler::profile_batched_gemm_impl<ADataType, BDataType, CDataType, Row, Row, Row>(
|
|
true, 1, false, 1, M, N, K, K, N, N, BatchCount);
|
|
|
|
pass = pass &&
|
|
ck::profiler::profile_batched_gemm_impl<ADataType, BDataType, CDataType, Row, Col, Row>(
|
|
true, 1, false, 1, M, N, K, K, K, N, BatchCount);
|
|
|
|
pass = pass &&
|
|
ck::profiler::profile_batched_gemm_impl<ADataType, BDataType, CDataType, Col, Row, Row>(
|
|
true, 1, false, 1, M, N, K, M, N, N, BatchCount);
|
|
|
|
pass = pass &&
|
|
ck::profiler::profile_batched_gemm_impl<ADataType, BDataType, CDataType, Col, Col, Row>(
|
|
true, 1, false, 1, M, N, K, M, K, N, BatchCount);
|
|
|
|
std::cout << "test BatchedGEMM fp16: " << (pass ? "Pass" : "Fail") << std::endl;
|
|
return pass ? 0 : 1;
|
|
}
|