ThreadwiseReduction< AccDataType, SrcThreadDesc_M_K, DstThreadDesc_M, OpReduce, PropagateNan, Accumulation > Struct Template Reference

ThreadwiseReduction&lt; AccDataType, SrcThreadDesc_M_K, DstThreadDesc_M, OpReduce, PropagateNan, Accumulation &gt; Struct Template Reference#

Composable Kernel: ck::ThreadwiseReduction< AccDataType, SrcThreadDesc_M_K, DstThreadDesc_M, OpReduce, PropagateNan, Accumulation > Struct Template Reference
ck::ThreadwiseReduction< AccDataType, SrcThreadDesc_M_K, DstThreadDesc_M, OpReduce, PropagateNan, Accumulation > Struct Template Reference

#include <reduction_functions_threadwise.hpp>

Public Types

using Op = OpReduce
 

Static Public Member Functions

template<typename SrcBufferType , typename DstBufferType >
static __device__ void Reduce (const SrcBufferType &src_buf, DstBufferType &dst_buf)
 

Static Public Attributes

static constexpr auto src_thread_desc_m_k = SrcThreadDesc_M_K{}
 
static constexpr auto dst_thread_desc_m = DstThreadDesc_M{}
 
static constexpr auto src_length_m = src_thread_desc_m_k.GetLength(Number<0>{})
 
static constexpr auto src_length_k = src_thread_desc_m_k.GetLength(Number<1>{})
 
static constexpr auto dst_length_m = dst_thread_desc_m.GetLength(Number<0>{})
 

Member Typedef Documentation

◆ Op

template<typename AccDataType , typename SrcThreadDesc_M_K , typename DstThreadDesc_M , typename OpReduce , bool PropagateNan, typename Accumulation = detail::AccumulateWithNanCheck<PropagateNan, OpReduce, AccDataType>>
using ck::ThreadwiseReduction< AccDataType, SrcThreadDesc_M_K, DstThreadDesc_M, OpReduce, PropagateNan, Accumulation >::Op = OpReduce

Member Function Documentation

◆ Reduce()

template<typename AccDataType , typename SrcThreadDesc_M_K , typename DstThreadDesc_M , typename OpReduce , bool PropagateNan, typename Accumulation = detail::AccumulateWithNanCheck<PropagateNan, OpReduce, AccDataType>>
template<typename SrcBufferType , typename DstBufferType >
static __device__ void ck::ThreadwiseReduction< AccDataType, SrcThreadDesc_M_K, DstThreadDesc_M, OpReduce, PropagateNan, Accumulation >::Reduce ( const SrcBufferType &  src_buf,
DstBufferType &  dst_buf 
)
inlinestatic

Member Data Documentation

◆ dst_length_m

template<typename AccDataType , typename SrcThreadDesc_M_K , typename DstThreadDesc_M , typename OpReduce , bool PropagateNan, typename Accumulation = detail::AccumulateWithNanCheck<PropagateNan, OpReduce, AccDataType>>
constexpr auto ck::ThreadwiseReduction< AccDataType, SrcThreadDesc_M_K, DstThreadDesc_M, OpReduce, PropagateNan, Accumulation >::dst_length_m = dst_thread_desc_m.GetLength(Number<0>{})
staticconstexpr

◆ dst_thread_desc_m

template<typename AccDataType , typename SrcThreadDesc_M_K , typename DstThreadDesc_M , typename OpReduce , bool PropagateNan, typename Accumulation = detail::AccumulateWithNanCheck<PropagateNan, OpReduce, AccDataType>>
constexpr auto ck::ThreadwiseReduction< AccDataType, SrcThreadDesc_M_K, DstThreadDesc_M, OpReduce, PropagateNan, Accumulation >::dst_thread_desc_m = DstThreadDesc_M{}
staticconstexpr

◆ src_length_k

template<typename AccDataType , typename SrcThreadDesc_M_K , typename DstThreadDesc_M , typename OpReduce , bool PropagateNan, typename Accumulation = detail::AccumulateWithNanCheck<PropagateNan, OpReduce, AccDataType>>
constexpr auto ck::ThreadwiseReduction< AccDataType, SrcThreadDesc_M_K, DstThreadDesc_M, OpReduce, PropagateNan, Accumulation >::src_length_k = src_thread_desc_m_k.GetLength(Number<1>{})
staticconstexpr

◆ src_length_m

template<typename AccDataType , typename SrcThreadDesc_M_K , typename DstThreadDesc_M , typename OpReduce , bool PropagateNan, typename Accumulation = detail::AccumulateWithNanCheck<PropagateNan, OpReduce, AccDataType>>
constexpr auto ck::ThreadwiseReduction< AccDataType, SrcThreadDesc_M_K, DstThreadDesc_M, OpReduce, PropagateNan, Accumulation >::src_length_m = src_thread_desc_m_k.GetLength(Number<0>{})
staticconstexpr

◆ src_thread_desc_m_k

template<typename AccDataType , typename SrcThreadDesc_M_K , typename DstThreadDesc_M , typename OpReduce , bool PropagateNan, typename Accumulation = detail::AccumulateWithNanCheck<PropagateNan, OpReduce, AccDataType>>
constexpr auto ck::ThreadwiseReduction< AccDataType, SrcThreadDesc_M_K, DstThreadDesc_M, OpReduce, PropagateNan, Accumulation >::src_thread_desc_m_k = SrcThreadDesc_M_K{}
staticconstexpr

The documentation for this struct was generated from the following file:
  • /home/docs/checkouts/readthedocs.org/user_builds/advanced-micro-devices-composable-kernel/checkouts/docs-6.4.3/include/ck/tensor_operation/gpu/thread/reduction_functions_threadwise.hpp