MLIR 22.0.0git
ShardingInterfaceImpl.h File Reference

Go to the source code of this file.

Classes

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

Namespaces

namespace  mlir
 Include the generated interface declarations.
namespace  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)