MLIR
20.0.0git
|
#include "mlir/Dialect/NVGPU/IR/NVGPUDialect.h"
#include "mlir/Dialect/GPU/IR/GPUDialect.h"
#include "mlir/Dialect/LLVMIR/LLVMTypes.h"
#include "mlir/IR/Builders.h"
#include "mlir/IR/BuiltinAttributes.h"
#include "mlir/IR/BuiltinTypes.h"
#include "mlir/IR/Diagnostics.h"
#include "mlir/IR/DialectImplementation.h"
#include "mlir/IR/Matchers.h"
#include "mlir/IR/OpImplementation.h"
#include "mlir/IR/PatternMatch.h"
#include "mlir/IR/TypeUtilities.h"
#include "mlir/IR/Verifier.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/ADT/StringExtras.h"
#include "llvm/ADT/TypeSwitch.h"
#include "mlir/Dialect/NVGPU/IR/NVGPUDialect.cpp.inc"
#include "mlir/Dialect/NVGPU/IR/NVGPUTypes.cpp.inc"
#include "mlir/Dialect/NVGPU/IR/NVGPUAttrDefs.cpp.inc"
#include "mlir/Dialect/NVGPU/IR/NVGPU.cpp.inc"
#include "mlir/Dialect/NVGPU/IR/NVGPUEnums.cpp.inc"
Go to the source code of this file.
Macros | |
#define | GET_TYPEDEF_LIST |
#define | GET_ATTRDEF_LIST |
#define | GET_OP_LIST |
#define | GET_ATTRDEF_CLASSES |
#define | GET_OP_CLASSES |
#define | GET_TYPEDEF_CLASSES |
Functions | |
static LogicalResult | verifyMmaSyncOp (Operation *op, TypedValue< VectorType > matrixA, TypedValue< VectorType > matrixB, TypedValue< VectorType > matrixC, const std::array< int64_t, 3 > &mmaShape, bool tf32Enabled, bool sparse=false) |
Performs verification for MmaSyncOp and MmaSparseSyncOp. More... | |
std::optional< InFlightDiagnostic > | verifyTmaDescriptorWithMemref (Operation *op, nvgpu::TensorMapDescriptorType descType, std::optional< MemRefType > memrefType=std::nullopt) |
LogicalResult | isAllowedWGMMADataType (Type typeD, Type typeA, Type typeB) |
LogicalResult | isAllowedSizeM (int sizeM) |
LogicalResult | isAllowedSizeN (int sizeN, Type typeA) |
#define GET_ATTRDEF_CLASSES |
Definition at line 666 of file NVGPUDialect.cpp.
#define GET_ATTRDEF_LIST |
#define GET_OP_CLASSES |
Definition at line 671 of file NVGPUDialect.cpp.
#define GET_OP_LIST |
#define GET_TYPEDEF_CLASSES |
Definition at line 674 of file NVGPUDialect.cpp.
#define GET_TYPEDEF_LIST |
LogicalResult isAllowedSizeM | ( | int | sizeM | ) |
Definition at line 524 of file NVGPUDialect.cpp.
References kWgmmaSizeM.
LogicalResult isAllowedSizeN | ( | int | sizeN, |
Type | typeA | ||
) |
Definition at line 530 of file NVGPUDialect.cpp.
References mlir::Type::isBF16(), mlir::Type::isF16(), mlir::Type::isF32(), mlir::Type::isFloat8E4M3FN(), mlir::Type::isFloat8E5M2(), mlir::Type::isInteger(), and mlir::Type::isTF32().
Definition at line 496 of file NVGPUDialect.cpp.
References mlir::Type::isBF16(), mlir::Type::isF16(), mlir::Type::isF32(), mlir::Type::isFloat8E4M3FN(), mlir::Type::isFloat8E5M2(), mlir::Type::isInteger(), and mlir::Type::isTF32().
|
static |
Performs verification for MmaSyncOp and MmaSparseSyncOp.
Definition at line 142 of file NVGPUDialect.cpp.
References mlir::Operation::emitError(), mlir::Type::getIntOrFloatBitWidth(), mlir::Operation::getName(), mlir::Type::isBF16(), mlir::Type::isF16(), mlir::Type::isF32(), mlir::Type::isF64(), and mlir::Type::isInteger().
std::optional<InFlightDiagnostic> verifyTmaDescriptorWithMemref | ( | Operation * | op, |
nvgpu::TensorMapDescriptorType | descType, | ||
std::optional< MemRefType > | memrefType = std::nullopt |
||
) |
Definition at line 341 of file NVGPUDialect.cpp.
References mlir::Operation::emitError(), kMaxTMADimension, and kMaxTMALastdimByte.