Add operator() overload to GemmPipelineAgBgCrCompAsyncEightWaves to use in QuantGemmKernel

This commit is contained in:
Anton Gorenko
2026-06-17 15:46:44 +05:00
parent 8428732dc2
commit aa5ed1a749

View File

@@ -237,6 +237,24 @@ struct GemmPipelineAgBgCrCompAsyncEightWaves : public BaseGemmPipelineAgBgCrComp
return Base::TailHandler(RunPipeline, has_hot_loop, tail_number);
}
template <typename ADramBlockWindowTmp,
typename BDramBlockWindowTmp,
typename std::enable_if_t<!is_detected<is_tuple, ADramBlockWindowTmp>::value &&
!is_detected<is_tuple, BDramBlockWindowTmp>::value,
bool>* = nullptr>
CK_TILE_DEVICE auto operator()(const ADramBlockWindowTmp& a_dram_block_window_tmp,
const BDramBlockWindowTmp& b_dram_block_window_tmp,
index_t num_loop,
void* p_smem) const
{
return operator()(ck_tile::make_tuple(a_dram_block_window_tmp),
ck_tile::element_wise::PassThrough{},
ck_tile::make_tuple(b_dram_block_window_tmp),
ck_tile::element_wise::PassThrough{},
num_loop,
p_smem);
}
};
} // namespace ck_tile