Skip to content

'npu_schedule' Dialect

NPU scheduled pipeline dialect Public NPU layer that makes scheduling decisions explicit: tile boundaries, engine assignment, and async dependencies.

Operations

npu_schedule.dma_start (iree_compiler::NPUSchedule::DmaStartOp)

Scheduled async DMA launch

Syntax:

operation ::= `npu_schedule.dma_start` $src `,` $dst `size` `=` $size `src_space` `=` $src_space `dst_space` `=` $dst_space
              attr-dict `:` type($src) `to` type($dst) `->` type($token)

Attributes:

AttributeMLIR TypeDescription
size::mlir::IntegerAttr64-bit signless integer attribute
src_space::mlir::IntegerAttr64-bit signless integer attribute
dst_space::mlir::IntegerAttr64-bit signless integer attribute

Operands:

Operand Description
src memref of any type values
dst memref of any type values

Results:

Result Description
token any type

npu_schedule.dma_wait (iree_compiler::NPUSchedule::DmaWaitOp)

Scheduled wait on DMA token

Syntax:

operation ::= `npu_schedule.dma_wait` $token attr-dict `:` type($token)

Operands:

Operand Description
token any type

npu_schedule.matmul_tile (iree_compiler::NPUSchedule::MatmulTileOp)

Scheduled matmul tile

Syntax:

operation ::= `npu_schedule.matmul_tile` $lhs `,` $rhs attr-dict `:` type($lhs) `,` type($rhs) `->` type($result)

Operands:

Operand Description
lhs tensor of any type values
rhs tensor of any type values

Results:

Result Description
result tensor of any type values

npu_schedule.softmax_fragment (iree_compiler::NPUSchedule::SoftmaxFragmentOp)

Scheduled softmax vector fragment

Syntax:

operation ::= `npu_schedule.softmax_fragment` $input attr-dict `:` type($input) `->` type($result)

Operands:

Operand Description
input tensor of any type values

Results:

Result Description
result tensor of any type values

npu_schedule.ukernel_launch (iree_compiler::NPUSchedule::UKernelLaunchOp)

Scheduled ukernel launch

Syntax:

operation ::= `npu_schedule.ukernel_launch` $symbol `(` $inputs `)` attr-dict `:` type($inputs) `->` type($result)

Attributes:

AttributeMLIR TypeDescription
symbol::mlir::StringAttrstring attribute

Operands:

Operand Description
inputs variadic of tensor of any type values

Results:

Result Description
result tensor of any type values