|
| SmallVector< Value > | mlir::xegpu::flattenValues (ArrayRef< ValueRange > values) |
| | Flatten a set of ValueRange into a single SmallVector<Value>
|
| FailureOr< VectorType > | mlir::xegpu::getDistributedVectorType (xegpu::TensorDescType tdescTy) |
| | If tensor descriptor has a layout attribute it is used in SIMT mode.
|
| FailureOr< VectorType > | mlir::xegpu::getDistributedVectorType (VectorType originalType, LayoutAttr layout) |
| | Helper to get the distributed vector type for a given vector type according to a given LayoutAttr.
|
| std::string | mlir::xegpu::getLayoutName (const OpOperand &operand) |
| | Return the attribute name for the OpOperand to attach DistributeLayoutAttr.
|
| std::string | mlir::xegpu::getLayoutName (const OpResult result) |
| | Return the attribute name for the OpResult to attach DistributeLayoutAttr.
|
| DistributeLayoutAttr | mlir::xegpu::getDistributeLayoutAttr (const Value value) |
| | Retrieves the DistributeLayoutAttr associated with a given Value.
|
| template<typename AttrTy> |
| AttrTy | mlir::xegpu::getDistributeLayoutAttrOfType (const Value value) |
| DistributeLayoutAttr | mlir::xegpu::getDistributeLayoutAttr (const OpOperand &opr) |
| | Retrieves the DistributeLayoutAttr associated with a given OpOperand.
|
| template<typename AttrTy> |
| AttrTy | mlir::xegpu::getDistributeLayoutAttrOfType (const OpOperand &opr) |
| template<typename T, typename = std::enable_if_t<std::is_same_v<T, OpOperand> || std::is_same_v<T, OpResult>>> |
| void | mlir::xegpu::removeLayoutAttr (const T &operandOrResult) |
| | Removes the LayoutAttr for a given OpOperand or OpResult if it exists.
|
| void | mlir::xegpu::removeLayoutAttrs (Operation *op) |
| | Removes the DistributeLayoutAttr for each OpOperand and OpResult of the given operation if they exist.
|
| template<typename T, typename = std::enable_if_t<std::is_same_v<T, OpOperand> || std::is_same_v<T, OpResult>>> |
| void | mlir::xegpu::setDistributeLayoutAttr (const T &operandOrResult, const DistributeLayoutAttr layout, bool respectPermLayout=false) |
| | Sets the DistributeLayoutAttr for a given OpOperand or OpResult by attaching it to the owner's dictionary attributes If respectPermLayout is true the existing permament layout attribute will be kept and assigned to the attribute dict instead of the provided layout.
|
| void | mlir::xegpu::setDistributeLayoutAttrs (Operation *op, function_ref< DistributeLayoutAttr(Value)> getLayoutImpl) |
| | Set the DistributeLayoutAttr for each OpOperand and OpResult of the given operation.
|
| SmallVector< Value > | mlir::xegpu::extractVectorsWithShapeFromValue (OpBuilder &builder, Location loc, Value value, ArrayRef< int64_t > shape) |
| | Extract a set of small vectors from a value with a given shape using vector.extract_stride_slice.
|
| Value | mlir::xegpu::createVectorWithShapeFromValues (OpBuilder &builder, Location loc, ValueRange values, ArrayRef< int64_t > shape) |
| | Create a vector of shape from a set of values using vector.insert_stride_slice.
|
| void | mlir::xegpu::doSCFStructuralTypeConversionWithTensorType (Operation *op, TypeConverter converter) |
| | Do type conversion for SCF structural ops, e.g., scf.for using SCF structure type convertion patterns.
|
| std::optional< std::string > | mlir::xegpu::getChipStr (Operation *op) |
| | Retrieves the chip string from the XeVM target attribute of the parent GPU module operation.
|
| SmallVector< OpFoldResult > | mlir::xegpu::addElementwise (OpBuilder &builder, Location loc, ArrayRef< OpFoldResult > lhs, ArrayRef< OpFoldResult > rhs) |
| | Generates element-wise addition ops of two arrays with same length.
|
| SmallVector< OpFoldResult > | mlir::xegpu::addWithRightAligned (OpBuilder &builder, Location loc, ArrayRef< OpFoldResult > lhs, ArrayRef< OpFoldResult > rhs) |
| | Generates element-wise addition ops of two arrays with automatic alignment.
|
| template<typename T> |
| int | mlir::xegpu::getLargestDivisor (T dim, ArrayRef< T > candidates, ArrayRef< T > candidateMultiples={}) |
| | Helper Function to find a proper instruction multiple for the user-supplied sg-level data shape (diven by dim).
|