|
MLIR 23.0.0git
|
#include "mlir/Dialect/XeGPU/uArch/IntelGpuXe2.h"
Public Member Functions | |
| SubgroupScaledMatrixMultiplyAcc (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 |
| bool | isLaneLayoutRowMajorOrder () const override |
| 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 219 of file IntelGpuXe2.h.
|
inline |
Definition at line 221 of file IntelGpuXe2.h.
References mlir::xegpu::uArch::Instruction::Instruction(), packedFormatBitSizeA, packedFormatBitSizeB, mlir::xegpu::uArch::Subgroup, and SubgroupScaledMatrixMultiplyAcc().
Referenced by SubgroupScaledMatrixMultiplyAcc().
|
inlineoverridevirtual |
Implements mlir::xegpu::uArch::MMAInstructionInterface.
Definition at line 619 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 586 of file IntelGpuXe2.h.
References mlir::Type::getIntOrFloatBitWidth().
Referenced by checkSupportedShapesAndTypes().
|
inlinestatic |
Definition at line 227 of file IntelGpuXe2.h.
References mlir::xegpu::uArch::Instruction::Instruction(), and mlir::xegpu::uArch::SubgroupScaledMatrixMultiplyAcc.
|
inline |
Definition at line 259 of file IntelGpuXe2.h.
References packedFormatBitSizeA.
|
inline |
Definition at line 260 of file IntelGpuXe2.h.
References packedFormatBitSizeB.
|
inlineoverridevirtual |
Implements mlir::xegpu::uArch::MMAInstructionInterface.
Definition at line 648 of file IntelGpuXe2.h.
References mlir::Type::getIntOrFloatBitWidth(), and mlir::Type::isIntOrFloat().
Referenced by getSupportedShapes().
|
inlineoverridevirtual |
Implements mlir::xegpu::uArch::MMAInstructionInterface.
Definition at line 643 of file IntelGpuXe2.h.
Referenced by getSupportedShapes().
|
inlineoverridevirtual |
Implements mlir::xegpu::uArch::MMAInstructionInterface.
Definition at line 669 of file IntelGpuXe2.h.
Referenced by getSupportedShapes().
|
inlineoverridevirtual |
Implements mlir::xegpu::uArch::MMAInstructionInterface.
Definition at line 536 of file IntelGpuXe2.h.
References b, getSupportedK(), getSupportedM(), getSupportedN(), mlir::xegpu::uArch::MatrixA, mlir::xegpu::uArch::MatrixB, mlir::xegpu::uArch::MatrixC, mlir::xegpu::uArch::MatrixD, and result.
Referenced by checkSupportedShapesAndTypes().
|
inlineoverridevirtual |
Implements mlir::xegpu::uArch::MMAInstructionInterface.
Definition at line 565 of file IntelGpuXe2.h.
References 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 261 of file IntelGpuXe2.h.
|
inlineoverridevirtual |
Implements mlir::xegpu::uArch::MMAInstructionInterface.
Definition at line 634 of file IntelGpuXe2.h.
References checkSupportedShapesAndTypes().
|
protected |
Definition at line 264 of file IntelGpuXe2.h.
Referenced by getPackedFormatBitSizeA(), and SubgroupScaledMatrixMultiplyAcc().
|
protected |
Definition at line 265 of file IntelGpuXe2.h.
Referenced by getPackedFormatBitSizeB(), and SubgroupScaledMatrixMultiplyAcc().