MLIR  20.0.0git
Classes | Namespaces | Functions
ShardingInterfaceImpl.h File Reference
#include "mlir/Dialect/Mesh/IR/MeshOps.h"
#include "mlir/Dialect/Mesh/Interfaces/ShardingInterface.h"
#include "mlir/IR/AffineMap.h"
#include "mlir/IR/Value.h"

Go to the source code of this file.

Classes

struct  mlir::mesh::IndependentParallelIteratorDomainShardingInterface< Op >
 
struct  mlir::mesh::ElementwiseShardingInterface< ElemwiseOp >
 

Namespaces

 mlir
 Include the generated interface declarations.
 
 mlir::mesh
 

Functions

ShardingArray mlir::mesh::getMeshAxisAssignmentForLoopIterators (ArrayRef< MeshSharding > operandShardings, ArrayRef< MeshSharding > resultShardings, ArrayRef< utils::IteratorType > loopIteratorTypes, ArrayRef< AffineMap > indexingMaps)
 
bool mlir::mesh::isAtLeastOneReductionIteratorSharded (ArrayRef< utils::IteratorType > loopIteratorTypes, ArrayRef< SmallVector< MeshAxis >> meshAxisAssignmentForLoopIterators)
 
SmallVector< MeshAxismlir::mesh::getReductionMeshAxes (ArrayRef< utils::IteratorType > loopIteratorTypes, ArrayRef< SmallVector< MeshAxis >> meshAxisAssignmentForLoopIterators)
 
void mlir::mesh::spmdizeTriviallyShardableOperation (Operation &op, ArrayRef< Value > spmdizedOperands, ArrayRef< MeshSharding > operandShardings, ArrayRef< MeshSharding > resultShardings, IRMapping &spmdizationMap, SymbolTableCollection &symbolTable, OpBuilder &builder)