/home/docs/checkouts/readthedocs.org/user_builds/advanced-micro-devices-composable-kernel/checkouts/develop/include/ck/tensor_operation/gpu/device/impl/device_gemm_xdl_cshuffle_v2.hpp Source File#
device_gemm_xdl_cshuffle_v2.hpp
Go to the documentation of this file.
23 // Note: inter-wave loop scheduler is rolled out to c-shuffle version first. Becuase non c-shuffle
float launch_and_time_kernel(const StreamConfig &stream_config, F kernel, dim3 grid_dim, dim3 block_dim, std::size_t lds_byte, Args... args)
Definition: kernel_launch.hpp:14
std::string getGemmSpecializationString(const GemmSpecialization &s)
Definition: gemm_specialization.hpp:32
GemmSpecialization
Definition: gemm_specialization.hpp:11
Definition: ck.hpp:267
@ Default
@ Interwave
constexpr LoopScheduler make_default_loop_scheduler()
Definition: loop_scheduler.hpp:20
Definition: stream_config.hpp:10
Definition: gridwise_gemm_xdl_cshuffle_v2.hpp:500
Definition: gridwise_gemm_xdl_cshuffle_v2.hpp:118
static __host__ auto CalculateGridSize(index_t M, index_t N)
Definition: gridwise_gemm_xdl_cshuffle_v2.hpp:136
static constexpr __host__ index_t CalculateKBlockLoopTailNum(index_t K)
Definition: gridwise_gemm_xdl_cshuffle_v2.hpp:696
static __host__ auto CalculateAK0(index_t K)
Definition: gridwise_gemm_xdl_cshuffle_v2.hpp:156
static constexpr __host__ bool CheckValidity(const Problem &problem)
Definition: gridwise_gemm_xdl_cshuffle_v2.hpp:585
Definition: integral_constant.hpp:20
Definition: device_base.hpp:51
Definition: device_base.hpp:62
Definition: device_gemm_xdl_cshuffle_v2.hpp:142
float Run(const Argument &arg, const StreamConfig &stream_config=StreamConfig{})
Definition: device_gemm_xdl_cshuffle_v2.hpp:143
float Run(const BaseArgument *p_arg, const StreamConfig &stream_config=StreamConfig{}) override
Definition: device_gemm_xdl_cshuffle_v2.hpp:178
Definition: device_gemm_xdl_cshuffle_v2.hpp:80
static auto MakeArgument(const ADataType *p_a, const BDataType *p_b, CDataType *p_c, index_t M, index_t N, index_t K, index_t StrideA, index_t StrideB, index_t StrideC, AElementwiseOperation, BElementwiseOperation, CElementwiseOperation)
Definition: device_gemm_xdl_cshuffle_v2.hpp:215
std::unique_ptr< BaseArgument > MakeArgumentPointer(const void *p_a, const void *p_b, void *p_c, index_t M, index_t N, index_t K, index_t StrideA, index_t StrideB, index_t StrideC, AElementwiseOperation, BElementwiseOperation, CElementwiseOperation) override
Definition: device_gemm_xdl_cshuffle_v2.hpp:234
bool IsSupportedArgument(const BaseArgument *p_arg) override
Definition: device_gemm_xdl_cshuffle_v2.hpp:210
static constexpr auto I0
Definition: device_gemm_xdl_cshuffle_v2.hpp:83
std::string GetTypeString() const override
Definition: device_gemm_xdl_cshuffle_v2.hpp:265
typename GridwiseGemm::Argument Argument
Definition: device_gemm_xdl_cshuffle_v2.hpp:138
static constexpr auto I1
Definition: device_gemm_xdl_cshuffle_v2.hpp:84
static constexpr bool IsValidCompilationParameter()
Definition: device_gemm_xdl_cshuffle_v2.hpp:185
static auto MakeInvoker()
Definition: device_gemm_xdl_cshuffle_v2.hpp:231
static bool IsSupportedArgument(const Argument &arg)
Definition: device_gemm_xdl_cshuffle_v2.hpp:191
std::unique_ptr< BaseInvoker > MakeInvokerPointer() override
Definition: device_gemm_xdl_cshuffle_v2.hpp:259
static constexpr auto I2
Definition: device_gemm_xdl_cshuffle_v2.hpp:85
Definition: device_gemm.hpp:22