|
MLIR
22.0.0git
|
#include "mlir/Dialect/XeGPU/uArch/IntelGpuXe2.h"
Inheritance diagram for mlir::xegpu::uArch::SubgroupMatrixMultiplyAcc:Public Member Functions | |
| SubgroupMatrixMultiplyAcc (unsigned packedFormatBitSizeA, unsigned packedFormatBitSizeB) | |
| virtual llvm::SmallVector< std::pair< uint32_t, uint32_t >, 16 > | getSupportedShapes (Type dataType, MMAOpndKind matrixType) override |
| virtual llvm::SmallVector< Type, 8 > | getSupportedTypes (MLIRContext &context, MMAOpndKind matrixType) override |
| virtual bool | checkSupportedShapesAndTypes (std::pair< uint32_t, uint32_t > AShape, std::pair< uint32_t, uint32_t > BShape, std::pair< uint32_t, uint32_t > CShape, std::pair< uint32_t, uint32_t > DShape, Type AType, Type BType, Type CType, Type DType) override |
| virtual bool | checkSupportedTypes (Type AType, Type BType, Type CType, Type DType) override |
| virtual bool | validate (std::pair< uint32_t, uint32_t > AShape, std::pair< uint32_t, uint32_t > BShape, std::pair< uint32_t, uint32_t > CShape, std::pair< uint32_t, uint32_t > DShape, Type AType, Type BType, Type CType, Type DType) override |
| virtual llvm::SmallVector< uint32_t, 8 > | getSupportedM (Type type) const override |
| virtual llvm::SmallVector< uint32_t, 8 > | getSupportedK (Type type) const override |
| virtual llvm::SmallVector< uint32_t, 8 > | getSupportedN (Type type) const override |
| unsigned | getPackedFormatBitSizeA () const |
| unsigned | getPackedFormatBitSizeB () const |
Public Member Functions inherited from mlir::xegpu::uArch::Instruction | |
| Instruction (InstructionKind kind, InstructionScope scope) | |
| ~Instruction ()=default | |
| InstructionKind | getInstructionKind () const |
| InstructionScope | getScope () const |
Public Member Functions inherited from mlir::xegpu::uArch::MMAInstructionInterface | |
| virtual | ~MMAInstructionInterface ()=default |
Static Public Member Functions | |
| static bool | classof (const Instruction *B) |
Static Public Member Functions inherited from mlir::xegpu::uArch::Instruction | |
| static llvm::StringRef | toString (InstructionKind instKind) |
| static std::optional< InstructionKind > | parseInstructionKind (llvm::StringRef str) |
Protected Attributes | |
| const unsigned | packedFormatBitSizeA |
| const unsigned | packedFormatBitSizeB |
Protected Attributes inherited from mlir::xegpu::uArch::Instruction | |
| const InstructionKind | instKind |
| const InstructionScope | scope |
Definition at line 170 of file IntelGpuXe2.h.
|
inline |
Definition at line 172 of file IntelGpuXe2.h.
References mlir::xegpu::uArch::Subgroup.
|
inlineoverridevirtual |
Implements mlir::xegpu::uArch::MMAInstructionInterface.
Definition at line 378 of file IntelGpuXe2.h.
References checkSupportedTypes(), getSupportedShapes(), mlir::xegpu::uArch::MatrixA, mlir::xegpu::uArch::MatrixB, mlir::xegpu::uArch::MatrixC, and mlir::xegpu::uArch::MatrixD.
Referenced by validate().
|
inlineoverridevirtual |
Implements mlir::xegpu::uArch::MMAInstructionInterface.
Definition at line 345 of file IntelGpuXe2.h.
References mlir::Type::isBF16(), mlir::Type::isF16(), mlir::Type::isF32(), mlir::Type::isInteger(), and mlir::Type::isTF32().
Referenced by checkSupportedShapesAndTypes().
|
inlinestatic |
Definition at line 178 of file IntelGpuXe2.h.
References mlir::xegpu::uArch::SubgroupMatrixMultiplyAcc.
|
inline |
Definition at line 210 of file IntelGpuXe2.h.
|
inline |
Definition at line 211 of file IntelGpuXe2.h.
|
inlineoverridevirtual |
Implements mlir::xegpu::uArch::MMAInstructionInterface.
Definition at line 407 of file IntelGpuXe2.h.
References mlir::Type::getIntOrFloatBitWidth(), and mlir::Type::isIntOrFloat().
Referenced by getSupportedShapes().
|
inlineoverridevirtual |
Implements mlir::xegpu::uArch::MMAInstructionInterface.
Definition at line 402 of file IntelGpuXe2.h.
Referenced by getSupportedShapes().
|
inlineoverridevirtual |
Implements mlir::xegpu::uArch::MMAInstructionInterface.
Definition at line 435 of file IntelGpuXe2.h.
Referenced by getSupportedShapes().
|
inlineoverridevirtual |
Implements mlir::xegpu::uArch::MMAInstructionInterface.
Definition at line 288 of file IntelGpuXe2.h.
References getSupportedK(), getSupportedM(), getSupportedN(), mlir::xegpu::uArch::MatrixA, mlir::xegpu::uArch::MatrixB, mlir::xegpu::uArch::MatrixC, and mlir::xegpu::uArch::MatrixD.
Referenced by checkSupportedShapesAndTypes().
|
inlineoverridevirtual |
Implements mlir::xegpu::uArch::MMAInstructionInterface.
Definition at line 325 of file IntelGpuXe2.h.
References mlir::get(), mlir::xegpu::uArch::MatrixA, mlir::xegpu::uArch::MatrixB, mlir::xegpu::uArch::MatrixC, and mlir::xegpu::uArch::MatrixD.
|
inlineoverridevirtual |
Implements mlir::xegpu::uArch::MMAInstructionInterface.
Definition at line 393 of file IntelGpuXe2.h.
References checkSupportedShapesAndTypes().
|
protected |
Definition at line 214 of file IntelGpuXe2.h.
|
protected |
Definition at line 215 of file IntelGpuXe2.h.