MLIR
22.0.0git
|
#include "mlir/Dialect/XeGPU/uArch/IntelGpuXe2.h"
Public Member Functions | |
DPASInstruction () | |
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) override |
virtual llvm::SmallVector< uint32_t, 8 > | getSupportedK (Type type) override |
virtual llvm::SmallVector< uint32_t, 8 > | getSupportedN (Type type) override |
![]() | |
Instruction (InstructionKind kind, InstructionScope scope) | |
virtual | ~Instruction ()=default |
InstructionKind | getInstructionKind () |
InstructionScope | getScope () |
![]() | |
virtual | ~MMAInstructionInterface ()=default |
Additional Inherited Members | |
![]() | |
static llvm::StringRef | toString (InstructionKind instKind) |
static std::optional< InstructionKind > | parseInstructionKind (llvm::StringRef str) |
![]() | |
InstructionKind | instKind |
InstructionScope | scope |
Definition at line 48 of file IntelGpuXe2.h.
|
inline |
Definition at line 49 of file IntelGpuXe2.h.
References mlir::xegpu::uArch::DPAS, and mlir::xegpu::uArch::Subgroup.
|
inlineoverridevirtual |
Implements mlir::xegpu::uArch::MMAInstructionInterface.
Definition at line 234 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 203 of file IntelGpuXe2.h.
References mlir::Type::isBF16(), mlir::Type::isF16(), mlir::Type::isF32(), mlir::Type::isInteger(), and mlir::Type::isTF32().
Referenced by checkSupportedShapesAndTypes().
|
inlineoverridevirtual |
Implements mlir::xegpu::uArch::MMAInstructionInterface.
Definition at line 265 of file IntelGpuXe2.h.
References mlir::Type::getIntOrFloatBitWidth(), and mlir::Type::isIntOrFloat().
Referenced by getSupportedShapes().
|
inlineoverridevirtual |
Implements mlir::xegpu::uArch::MMAInstructionInterface.
Definition at line 260 of file IntelGpuXe2.h.
Referenced by getSupportedShapes().
|
inlineoverridevirtual |
Implements mlir::xegpu::uArch::MMAInstructionInterface.
Definition at line 293 of file IntelGpuXe2.h.
Referenced by getSupportedShapes().
|
inlineoverridevirtual |
Implements mlir::xegpu::uArch::MMAInstructionInterface.
Definition at line 147 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 183 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 249 of file IntelGpuXe2.h.
References checkSupportedShapesAndTypes().