Internal::Dimension#
-
class Dimension#
Public Functions
-
Expr min() const#
Get an expression representing the minimum coordinates of this image parameter in the given dimension.
-
Expr extent() const#
Get an expression representing the extent of this image parameter in the given dimension.
-
Expr max() const#
Get an expression representing the maximum coordinates of this image parameter in the given dimension.
-
Expr stride() const#
Get an expression representing the stride of this image in the given dimension.
-
Dimension set_min(const Expr &min)#
Set the min in a given dimension to equal the given expression.
Setting the mins to zero may simplify some addressing math.
-
Dimension set_extent(const Expr &extent)#
Set the extent in a given dimension to equal the given expression.
Images passed in that fail this check will generate a runtime error. Returns a reference to the ImageParam so that these calls may be chained.
This may help the compiler generate better code. E.g:
tells the compiler that dimension zero must be of extent 100, which may result in simplification of boundary checks. The value can be an arbitrary expression:im.dim(0).set_extent(100);
declares that im is a square image (of unknown size), whereas:im.dim(0).set_extent(im.dim(1).extent());
tells the compiler that the extent is a multiple of 32.im.dim(0).set_extent((im.dim(0).extent()/32)*32);
-
Dimension set_stride(const Expr &stride)#
Set the stride in a given dimension to equal the given value.
This is particularly helpful to set when vectorizing. Known strides for the vectorized dimension generate better code.
-
Expr min() const#