mirror of
https://github.com/ROCm/composable_kernel.git
synced 2026-05-04 21:51:28 +00:00
* add DeviceGemmXdl * update script * fix naming issue * fix comment * output HostTensorDescriptor * rename * padded GEMM for fwd v4r4r4 nhwc * refactor * refactor * refactor * adding ckProfiler * adding ckProfiler * refactor * fix tuning parameter bug * add more gemm instances * add more fp16 GEMM instances * fix profiler driver * fix bug in tuning parameter * add fp32 gemm instances * small fix * refactor * rename * refactor gemm profiler; adding DeviceConv and conv profiler * refactor * fix * add conv profiler * refactor * adding more GEMM and Conv instance * Create README.md Add build instruction for ckProfiler * Create README.md Add Readme for gemm_xdl example * Update README.md Remove build instruction from top most folder * Update README.md * clean up
43 lines
954 B
C++
43 lines
954 B
C++
#ifndef DEVICE_BASE_HPP
|
|
#define DEVICE_BASE_HPP
|
|
|
|
namespace ck {
|
|
namespace tensor_operation {
|
|
namespace device {
|
|
|
|
struct BaseArgument
|
|
{
|
|
BaseArgument() = default;
|
|
BaseArgument(const BaseArgument&) = default;
|
|
BaseArgument& operator=(const BaseArgument&) = default;
|
|
|
|
virtual ~BaseArgument() {}
|
|
};
|
|
|
|
struct BaseInvoker
|
|
{
|
|
BaseInvoker() = default;
|
|
BaseInvoker(const BaseInvoker&) = default;
|
|
BaseInvoker& operator=(const BaseInvoker&) = default;
|
|
|
|
virtual float Run(const BaseArgument*, int = 1) = 0;
|
|
|
|
virtual ~BaseInvoker() {}
|
|
};
|
|
|
|
struct BaseOperator
|
|
{
|
|
BaseOperator() = default;
|
|
BaseOperator(const BaseOperator&) = default;
|
|
BaseOperator& operator=(const BaseOperator&) = default;
|
|
|
|
virtual bool IsSupportedArgument(const BaseArgument*) = 0;
|
|
|
|
virtual ~BaseOperator() {}
|
|
};
|
|
|
|
} // namespace device
|
|
} // namespace tensor_operation
|
|
} // namespace ck
|
|
#endif
|