MLIR  22.0.0git
Public Member Functions | List of all members
mlir::xegpu::uArch::DPASInstruction Struct Reference

#include "mlir/Dialect/XeGPU/uArch/IntelGpuXe2.h"

+ Inheritance diagram for mlir::xegpu::uArch::DPASInstruction:

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
 
- Public Member Functions inherited from mlir::xegpu::uArch::Instruction
 Instruction (InstructionKind kind, InstructionScope scope)
 
virtual ~Instruction ()=default
 
InstructionKind getInstructionKind ()
 
InstructionScope getScope ()
 
- Public Member Functions inherited from mlir::xegpu::uArch::MMAInstructionInterface
virtual ~MMAInstructionInterface ()=default
 

Additional Inherited Members

- Static Public Member Functions inherited from mlir::xegpu::uArch::Instruction
static llvm::StringRef toString (InstructionKind instKind)
 
static std::optional< InstructionKindparseInstructionKind (llvm::StringRef str)
 
- Protected Attributes inherited from mlir::xegpu::uArch::Instruction
InstructionKind instKind
 
InstructionScope scope
 

Detailed Description

Definition at line 48 of file IntelGpuXe2.h.

Constructor & Destructor Documentation

◆ DPASInstruction()

mlir::xegpu::uArch::DPASInstruction::DPASInstruction ( )
inline

Definition at line 49 of file IntelGpuXe2.h.

References mlir::xegpu::uArch::DPAS, and mlir::xegpu::uArch::Subgroup.

Member Function Documentation

◆ checkSupportedShapesAndTypes()

bool DPASInstruction::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 
)
inlineoverridevirtual

◆ checkSupportedTypes()

bool DPASInstruction::checkSupportedTypes ( Type  AType,
Type  BType,
Type  CType,
Type  DType 
)
inlineoverridevirtual

◆ getSupportedK()

llvm::SmallVector< uint32_t, 8 > DPASInstruction::getSupportedK ( Type  type)
inlineoverridevirtual

◆ getSupportedM()

llvm::SmallVector< uint32_t, 8 > DPASInstruction::getSupportedM ( Type  type)
inlineoverridevirtual

Implements mlir::xegpu::uArch::MMAInstructionInterface.

Definition at line 260 of file IntelGpuXe2.h.

Referenced by getSupportedShapes().

◆ getSupportedN()

llvm::SmallVector< uint32_t, 8 > DPASInstruction::getSupportedN ( Type  type)
inlineoverridevirtual

Implements mlir::xegpu::uArch::MMAInstructionInterface.

Definition at line 293 of file IntelGpuXe2.h.

Referenced by getSupportedShapes().

◆ getSupportedShapes()

llvm::SmallVector< std::pair< uint32_t, uint32_t >, 16 > DPASInstruction::getSupportedShapes ( Type  dataType,
MMAOpndKind  matrixType 
)
inlineoverridevirtual

◆ getSupportedTypes()

llvm::SmallVector< Type, 8 > DPASInstruction::getSupportedTypes ( MLIRContext context,
MMAOpndKind  matrixType 
)
inlineoverridevirtual

◆ validate()

bool DPASInstruction::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 
)
inlineoverridevirtual

The documentation for this struct was generated from the following file: