where_tile

void ckernel::where_tile_init()

Please refer to documentation for any_init.

void ckernel::where_tile(uint32_t idst0, uint32_t idst1, uint32_t idst2, uint32_t odst)

Performs an elementwise where operation with the three inputs: y = where(x0,x1,x2) Output overwrites odst in DST.

The DST register buffer must be in acquired state via acquire_dst call. This call is blocking and is only available on the compute engine.

Argument

Description

Type

Valid Range

Required

idst0

The index of the tile in DST register buffer to use as condition operand

uint32_t

Must be less than the size of the DST register buffer

True

idst1

The index of the tile in DST register buffer to use as first operand

uint32_t

Must be less than the size of the DST register buffer

True

idst2

The index of the tile in DST register buffer to use as second operand

uint32_t

Must be less than the size of the DST register buffer

True

odst

The index of the tile in DST register buffer to use as output

uint32_t

Must be less than the size of the DST register buffer

True

void ckernel::where_fp32_tile(uint32_t idst0, uint32_t idst1, uint32_t idst2, uint32_t odst)
void ckernel::where_int32_tile(uint32_t idst0, uint32_t idst1, uint32_t idst2, uint32_t odst)