struct
SushiBLAS::Spatial::WindowSpan
Holds where one spatial operation's input and output live, in element counts.
- Declared in
include/SushiBLAS/support/spatial_geometry.hpp
See also
include/SushiBLAS/support/README.md
Public attributes
int64_t batch = 0How many independent images.
int64_t in_h = 0The input's row count.
int64_t in_w = 0The input's column count.
int64_t channels = 0The channel count, shared by input and output.
int64_t out_h = 0The output's row count; output_extent's answer.
int64_t out_w = 0The output's column count; output_extent's answer.
int64_t in_batch_stride = 0Input elements between consecutive images.
int64_t in_row_stride = 0Input elements between vertically adjacent pixels.
int64_t in_col_stride = 0Input elements between horizontally adjacent pixels.
int64_t in_channel_stride = 1Input elements between adjacent channels of one pixel.
int64_t out_batch_stride = 0Output elements between consecutive images.
int64_t out_row_stride = 0Output elements between vertically adjacent pixels.
int64_t out_col_stride = 0Output elements between horizontally adjacent pixels.
int64_t out_channel_stride = 1Output elements between adjacent channels of one pixel.
ConvGeometry geometry {}The window itself.
Public member functions
constexpr int64_t windows() const noexceptHow many windows the operation visits: batch * out_h * out_w.
constexpr int64_t patch_elements() const noexceptHow many elements one window contributes: kernel_h * kernel_w * channels.
constexpr int64_t column_elements() const noexceptHow many elements an im2col matrix holds: windows() * patch_elements().

