[CK_BUILDER] Convert convolution traits to a struct with factory functions (#3547)

* Factor helpers out of conv_traits.hpp

* Create a non-templated conv_traits struct

* Migrate to new instance-specific instance_to_conv_traits functions

* Clean up reflection concepts

* Clean up ConvTraits helpers

* Update testing for convolution traits

This is a lot of cleanup on tests to have verbose coverage of feature
extraction, explicit tests for each supported device kernel, and
simple, readable test code.

* Address reviewer comments and resolve merge conflict
This commit is contained in:
John Shumway
2026-01-15 01:03:21 -08:00
committed by GitHub
parent 8705fdcb0c
commit 5122637215
17 changed files with 2288 additions and 1875 deletions

View File

@@ -2108,7 +2108,7 @@ struct DeviceGroupedConvFwdMultipleABD_Xdl_CShuffle
std::unique_ptr<ck_tile::reflect::Description> describe() const override
{
static_assert(ck_tile::reflect::conv::HasConvTraits<DeviceOp>,
static_assert(ck_tile::reflect::HasConvTraits<DeviceOp>,
"ConvTraits specialization not found for this device operation. "
"If you modified the template parameters of this class, ensure that "
"the corresponding ConvTraits specialization in "

View File

@@ -1282,7 +1282,7 @@ struct DeviceGroupedConvFwdMultipleD_Xdl_CShuffle_Large_Tensor
std::unique_ptr<ck_tile::reflect::Description> describe() const override
{
static_assert(
ck_tile::reflect::conv::HasConvTraits<DeviceOp>,
ck_tile::reflect::HasConvTraits<DeviceOp>,
"ConvTraits specialization not found for this device operation. "
"If you modified the template parameters of this class, ensure that "
"the corresponding ConvTraits specialization in "