mirror of
https://github.com/ROCm/composable_kernel.git
synced 2026-05-17 11:30:02 +00:00
Add mechanism to build CK for select data types, add Navi3x CI. (#790)
* allow building CK for specific data types
* add CI build and test stage on Naiv3x without some int8 instances
* add missing gemm fp16 instances
* add the changes to the missed cmake file
* add empty lines at end of source files
* Do not build quantization client example on navi3 in CI
* disable batched_gemm_multi_d_int8 instances with DTYPES
* disable device_conv2d_bwd_data_instance with DTYPES
* fix ckprofiler for conv_bwd_data for int8
* properly isolate the conv_bwd_data int8 instances
* remove empty line
[ROCm/composable_kernel commit: 189ea3b9aa]
This commit is contained in:
@@ -77,7 +77,9 @@ int profile_conv_bwd_data(int argc, char* argv[])
|
||||
using F32 = float;
|
||||
using F16 = ck::half_t;
|
||||
using BF16 = ck::bhalf_t;
|
||||
#ifdef __int8__
|
||||
using INT8 = int8_t;
|
||||
#endif
|
||||
|
||||
using NWC = ck::tensor_layout::convolution::NWC;
|
||||
using NHWC = ck::tensor_layout::convolution::NHWC;
|
||||
@@ -138,10 +140,12 @@ int profile_conv_bwd_data(int argc, char* argv[])
|
||||
{
|
||||
return profile(I1, NWC{}, KXC{}, NWK{}, BF16{}, BF16{}, BF16{});
|
||||
}
|
||||
#ifdef __int8__
|
||||
else if(data_type == ConvDataType::INT8_INT8_INT8)
|
||||
{
|
||||
return profile(I1, NWC{}, KXC{}, NWK{}, INT8{}, INT8{}, INT8{});
|
||||
}
|
||||
#endif
|
||||
}
|
||||
else if(num_dim_spatial == 2 && layout == ConvLayout::NHWC_KYXC_NHWK)
|
||||
{
|
||||
@@ -157,10 +161,12 @@ int profile_conv_bwd_data(int argc, char* argv[])
|
||||
{
|
||||
return profile(I2, NHWC{}, KYXC{}, NHWK{}, BF16{}, BF16{}, BF16{});
|
||||
}
|
||||
#ifdef __int8__
|
||||
else if(data_type == ConvDataType::INT8_INT8_INT8)
|
||||
{
|
||||
return profile(I2, NHWC{}, KYXC{}, NHWK{}, INT8{}, INT8{}, INT8{});
|
||||
}
|
||||
#endif
|
||||
}
|
||||
else if(num_dim_spatial == 3 && layout == ConvLayout::NHWC_KYXC_NHWK)
|
||||
{
|
||||
@@ -176,10 +182,12 @@ int profile_conv_bwd_data(int argc, char* argv[])
|
||||
{
|
||||
return profile(I3, NDHWC{}, KZYXC{}, NDHWK{}, BF16{}, BF16{}, BF16{});
|
||||
}
|
||||
#ifdef __int8__
|
||||
else if(data_type == ConvDataType::INT8_INT8_INT8)
|
||||
{
|
||||
return profile(I3, NDHWC{}, KZYXC{}, NDHWK{}, INT8{}, INT8{}, INT8{});
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
std::cout << "this data_type & layout is not implemented" << std::endl;
|
||||
|
||||
Reference in New Issue
Block a user