Skip to main content

Mojo struct

ConvShape

struct ConvShape[rank: Int]

A shape struct describing the convolution dimensions.

Fields​

  • ​n (Int):
  • ​input_dims (IndexList[rank]):
  • ​output_dims (IndexList[rank]):
  • ​filter_dims (IndexList[rank]):
  • ​c (Int):
  • ​f (Int):
  • ​stride (IndexList[rank]):
  • ​dilation (IndexList[rank]):
  • ​pad_d (IndexList[2]):
  • ​pad_h (IndexList[2]):
  • ​pad_w (IndexList[2]):
  • ​num_groups (Int):

Implemented traits​

AnyType, Copyable, ImplicitlyCopyable, ImplicitlyDestructible, Movable, RegisterPassable, TrivialRegisterPassable

Methods​

d​

d(self) -> Int

Input depth.

Returns:

Int

h​

h(self) -> Int

Input height.

Returns:

Int

w​

w(self) -> Int

Input width.

Returns:

Int

do​

do(self) -> Int

Output depth.

Returns:

Int

ho​

ho(self) -> Int

Output height.

Returns:

Int

wo​

wo(self) -> Int

Output width.

Returns:

Int

q​

q(self) -> Int

Filter window depth.

Returns:

Int

r​

r(self) -> Int

Filter window height.

Returns:

Int

s​

s(self) -> Int

Filter window width.

Returns:

Int

filter_window_flat_size​

filter_window_flat_size(self) -> Int

Returns:

Int

input_image_flat_size​

input_image_flat_size(self) -> Int

Returns:

Int

output_image_flat_size​

output_image_flat_size(self) -> Int

Returns:

Int

output_space_dims​

output_space_dims(self) -> IndexList[rank]

Returns:

IndexList[rank]

output_flat_coord_to_input_offset​

output_flat_coord_to_input_offset(self, n: Int, output_flat_coord: Int) -> Int

Returns:

Int

matmul_M​

matmul_M(self) -> Int

Returns:

Int

matmul_N​

matmul_N(self) -> Int

Returns:

Int

matmul_K​

matmul_K(self) -> Int

Returns:

Int

padded​

padded(self) -> Bool

Returns:

Bool

c_per_group​

c_per_group(self) -> Int

Returns the number of channels per group. Channel count must be divisible by group size.

Returns:

Int

f_per_group​

f_per_group(self) -> Int

Returns the number of filters per group. Filter count must be divisible by group size.

Returns:

Int

f_to_group​

f_to_group(self, f_idx: Int) -> Int

Given a global filter idx, returns the group idx of the group the filter belongs to.

Returns:

Int

c_to_group​

c_to_group(self, c_idx: Int) -> Int

Given a global channel idx, returns the group idx of the group the channel belongs to.

Returns:

Int

f_in_group​

f_in_group(self, f_idx: Int) -> Int

Given a global filter idx, returns the offset of the filter in its group.

Returns:

Int

c_in_group​

c_in_group(self, c_idx: Int) -> Int

Given a global channel idx, returns the offset of the channel in its group.

Returns:

Int