'npu_kernel' Dialect
NPU kernel semantic dialect Public NPU layer for kernel-level semantics that cannot be represented precisely in existing standard dialects.
Operations
npu_kernel.dma_await (iree_compiler::NPUKernel::DmaAwaitOp)
Wait on async DMA token
Syntax:
Operands:
| Operand | Description |
|---|---|
token |
any type |
npu_kernel.dma_start (iree_compiler::NPUKernel::DmaStartOp)
Async DMA launch returning an async token
Syntax:
operation ::= `npu_kernel.dma_start` $src `,` $dst `size` `=` $size attr-dict `:` type($src) `to` type($dst) `->` type($token)
Attributes:
| Attribute | MLIR Type | Description |
|---|---|---|
size | ::mlir::IntegerAttr | 64-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_kernel.matmul (iree_compiler::NPUKernel::MatmulOp)
NPU kernel-level matmul intent
Syntax:
operation ::= `npu_kernel.matmul` $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_kernel.ukernel_generic (iree_compiler::NPUKernel::UKernelGenericOp)
Kernel-level generic ukernel call
Syntax:
operation ::= `npu_kernel.ukernel_generic` $symbol `(` $inputs `)` attr-dict `:` type($inputs) `->` type($result)
Attributes:
| Attribute | MLIR Type | Description |
|---|---|---|
symbol | ::mlir::StringAttr | string attribute |
Operands:
| Operand | Description |
|---|---|
inputs |
variadic of tensor of any type values |
Results:
| Result | Description |
|---|---|
result |
tensor of any type values |