MLIR  22.0.0git
Classes | Namespaces | Functions
ShardingInterfaceImpl.h File Reference
#include "mlir/Dialect/Shard/IR/ShardOps.h"
#include "mlir/Dialect/Shard/Interfaces/ShardingInterface.h"
#include "mlir/IR/AffineMap.h"
#include "mlir/IR/Value.h"

Go to the source code of this file.

Classes

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

Namespaces

 mlir
 Include the generated interface declarations.
 
 mlir::shard
 

Functions

ShardingArray mlir::shard::getGridAxisAssignmentForLoopIterators (ArrayRef< Sharding > operandShardings, ArrayRef< Sharding > resultShardings, ArrayRef< utils::IteratorType > loopIteratorTypes, ArrayRef< AffineMap > indexingMaps)
 
bool mlir::shard::isAtLeastOneReductionIteratorSharded (ArrayRef< utils::IteratorType > loopIteratorTypes, ArrayRef< SmallVector< GridAxis >> gridAxisAssignmentForLoopIterators)
 
SmallVector< GridAxismlir::shard::getReductionGridAxes (ArrayRef< utils::IteratorType > loopIteratorTypes, ArrayRef< SmallVector< GridAxis >> gridAxisAssignmentForLoopIterators)
 
void mlir::shard::partitionTriviallyShardableOperation (Operation &op, ArrayRef< Value > partitionedOperands, ArrayRef< Sharding > operandShardings, ArrayRef< Sharding > resultShardings, IRMapping &partitionMap, SymbolTableCollection &symbolTable, OpBuilder &builder)