Cutlass
CUDA Templates for Linear Algebra Subroutines and Solvers
Classes | Public Types | Static Public Attributes | List of all members
cutlass::TileTraitsWarpRake< Tile_, Threads > Struct Template Reference

Tiling in which warps rake across the contiguous dimension.

#include <tile_traits_standard.h>

Classes

struct  ThreadOffset
 Computes the thread offset in (H, W) based on thread ID. More...
 

Public Types

typedef Tile_ Tile
 Shape of tile. More...
 
typedef Shape< 1, kWarpsStrided, kWarpsContiguous *kWarpSizeThreadShape
 Arrangement of threads. More...
 
typedef Shape< 1, kWarpsStrided, kWarpSizeDelta
 The same warp rakes along the contiguous dimension. More...
 
typedef Shape< 1, Tile::kH/Delta::kH, Tile::kW/ThreadShape::kWIterations
 Number of iterations. More...
 

Static Public Attributes

static int const kThreads = Threads
 Number of participating threads. More...
 
static int const kWarpSize = 32
 Hard-coded warp size. More...
 
static int const kWarpCount = kThreads / kWarpSize
 Number of participating warps. More...
 
static int const kWarpsStrided = __NV_STD_MIN(kWarpCount, Tile::kH)
 Warps strip-mined across strided dimension. More...
 
static int const kWarpsContiguous = kWarpCount / kWarpsStrided
 Warps stripmined contiguous dimension. More...
 

Member Typedef Documentation

◆ Delta

template<typename Tile_ , int Threads>
typedef Shape<1, kWarpsStrided, kWarpSize> cutlass::TileTraitsWarpRake< Tile_, Threads >::Delta

◆ Iterations

template<typename Tile_ , int Threads>
typedef Shape<1, Tile::kH / Delta::kH, Tile::kW / ThreadShape::kW> cutlass::TileTraitsWarpRake< Tile_, Threads >::Iterations

◆ ThreadShape

template<typename Tile_ , int Threads>
typedef Shape<1, kWarpsStrided, kWarpsContiguous * kWarpSize> cutlass::TileTraitsWarpRake< Tile_, Threads >::ThreadShape

◆ Tile

template<typename Tile_ , int Threads>
typedef Tile_ cutlass::TileTraitsWarpRake< Tile_, Threads >::Tile

Member Data Documentation

◆ kThreads

template<typename Tile_ , int Threads>
int const cutlass::TileTraitsWarpRake< Tile_, Threads >::kThreads = Threads
static

◆ kWarpCount

template<typename Tile_ , int Threads>
int const cutlass::TileTraitsWarpRake< Tile_, Threads >::kWarpCount = kThreads / kWarpSize
static

◆ kWarpsContiguous

template<typename Tile_ , int Threads>
int const cutlass::TileTraitsWarpRake< Tile_, Threads >::kWarpsContiguous = kWarpCount / kWarpsStrided
static

◆ kWarpSize

template<typename Tile_ , int Threads>
int const cutlass::TileTraitsWarpRake< Tile_, Threads >::kWarpSize = 32
static

◆ kWarpsStrided

template<typename Tile_ , int Threads>
int const cutlass::TileTraitsWarpRake< Tile_, Threads >::kWarpsStrided = __NV_STD_MIN(kWarpCount, Tile::kH)
static

The documentation for this struct was generated from the following file: