From da140c434bbaa75766468cf6f5a33aa52bb248d1 Mon Sep 17 00:00:00 2001 From: John Shumway Date: Sun, 7 Sep 2025 19:35:54 +0000 Subject: [PATCH] Update some more concept names. --- .../include/ck_tile/builder/conv_algorithm.hpp | 4 ++-- .../include/ck_tile/builder/conv_builder.hpp | 2 +- .../include/ck_tile/builder/conv_factory.hpp | 16 ++++++++-------- experimental/builder/test/test_conv_builder.cpp | 2 +- .../builder/test/test_conv_instances.cpp | 4 ++-- 5 files changed, 14 insertions(+), 14 deletions(-) diff --git a/experimental/builder/include/ck_tile/builder/conv_algorithm.hpp b/experimental/builder/include/ck_tile/builder/conv_algorithm.hpp index d8039c112c..24f104684e 100644 --- a/experimental/builder/include/ck_tile/builder/conv_algorithm.hpp +++ b/experimental/builder/include/ck_tile/builder/conv_algorithm.hpp @@ -148,12 +148,12 @@ enum class BlockGemmPipelineVersion // Concept to check if struct specifies block_gemm_pipeline_version. template -concept ProvidesBlockGemmPipelineVersion = requires { +concept SpecifiesGemmPipelineVersion = requires { { T::pipeline_version } -> std::convertible_to; }; // No requirements yet for a ConvAlogorithm concept. template -concept ConvAlgorithm = std::is_class_v; +concept ConvAlgorithmDescriptor = std::is_class_v; } // namespace ck_tile::builder diff --git a/experimental/builder/include/ck_tile/builder/conv_builder.hpp b/experimental/builder/include/ck_tile/builder/conv_builder.hpp index ab82deea9b..c1e1b3c6d2 100644 --- a/experimental/builder/include/ck_tile/builder/conv_builder.hpp +++ b/experimental/builder/include/ck_tile/builder/conv_builder.hpp @@ -22,7 +22,7 @@ namespace ck_tile::builder { * @tparam ALGORITHM The specific convolution algorithm to be used for the implementation. * @tparam VERSION The version of the builder implementation. */ -template +template requires SupportedVersion struct ConvBuilder { diff --git a/experimental/builder/include/ck_tile/builder/conv_factory.hpp b/experimental/builder/include/ck_tile/builder/conv_factory.hpp index bc432784fb..3fc6a14fd9 100644 --- a/experimental/builder/include/ck_tile/builder/conv_factory.hpp +++ b/experimental/builder/include/ck_tile/builder/conv_factory.hpp @@ -73,7 +73,7 @@ struct ConvBlock MNK per_block; }; -template +template constexpr ConvBlock SetThreadBlockInfo() { using AlgorithmType = decltype(ALGORITHM); @@ -102,7 +102,7 @@ struct ConvTuning int n_xdl_per_wave = 0; }; -template +template constexpr ConvTuning SetConvTuningInfo() { using AlgorithmType = decltype(ALGORITHM); @@ -150,7 +150,7 @@ struct CBlockTransfer int scaler_per_vector = 8; }; -template +template constexpr BlockTransfer SetABlockTransfer() { BlockTransfer block_transfer{ @@ -172,7 +172,7 @@ constexpr BlockTransfer SetABlockTransfer() return block_transfer; } -template +template constexpr BlockTransfer SetBBlockTransfer() { BlockTransfer block_transfer{ @@ -194,7 +194,7 @@ constexpr BlockTransfer SetBBlockTransfer() return block_transfer; } -template +template constexpr CBlockTransfer SetCBlockTransfer() { CBlockTransfer block_transfer{ @@ -217,11 +217,11 @@ constexpr CBlockTransfer SetCBlockTransfer() return block_transfer; } -template +template constexpr ck::BlockGemmPipelineVersion SetBlockGemmPipelineVersion() { using AlgorithmType = decltype(ALGORITHM); - if constexpr(ProvidesBlockGemmPipelineVersion) + if constexpr(SpecifiesGemmPipelineVersion) { switch(ALGORITHM.pipeline_version) { @@ -236,7 +236,7 @@ constexpr ck::BlockGemmPipelineVersion SetBlockGemmPipelineVersion() } // Factory builds an instance of a grouped convolution kernel. -template +template requires SupportedVersion struct GroupedConvForwardXldCShuffleFactoryV3 { diff --git a/experimental/builder/test/test_conv_builder.cpp b/experimental/builder/test/test_conv_builder.cpp index 7a7310d738..2012aa1170 100644 --- a/experimental/builder/test/test_conv_builder.cpp +++ b/experimental/builder/test/test_conv_builder.cpp @@ -18,7 +18,7 @@ static_assert(ckb::ConvSignature); struct DefaultFwdConvAlgorithm { }; -static_assert(ckb::ConvAlgorithm); +static_assert(ckb::ConvAlgorithmDescriptor); constexpr char API_VERSION[] = "0.1.0"; static_assert(ckb::SupportedVersion); diff --git a/experimental/builder/test/test_conv_instances.cpp b/experimental/builder/test/test_conv_instances.cpp index e58e8da8b6..0cc194b213 100644 --- a/experimental/builder/test/test_conv_instances.cpp +++ b/experimental/builder/test/test_conv_instances.cpp @@ -42,13 +42,13 @@ struct FwdConvAlgorithm } block_transfer; ckb::BlockGemmPipelineVersion pipeline_version; }; -static_assert(ckb::ConvAlgorithm); +static_assert(ckb::ConvAlgorithmDescriptor); static_assert(ckb::SpecifiesThreadBlock); static_assert(ckb::SpecifiesConvTuning); static_assert(ckb::SpecifiesBlockATransfer); static_assert(ckb::SpecifiesBlockBTransfer); static_assert(ckb::SpecifiesBlockCTransfer); -static_assert(ckb::ProvidesBlockGemmPipelineVersion); +static_assert(ckb::SpecifiesGemmPipelineVersion); // A container for a single test case, bundling a descriptive name, the // algorithm configuration, and the expected generated kernel type string.