|
MLIR 22.0.0git
|
Public Types | |
| using | Base = AsyncParallelForPassBase |
Public Member Functions | |
| AsyncParallelForPassBase () | |
| AsyncParallelForPassBase (const AsyncParallelForPassBase &other) | |
| AsyncParallelForPassBase & | operator= (const AsyncParallelForPassBase &)=delete |
| AsyncParallelForPassBase (AsyncParallelForPassBase &&)=delete | |
| AsyncParallelForPassBase & | operator= (AsyncParallelForPassBase &&)=delete |
| ~AsyncParallelForPassBase ()=default | |
| ::llvm::StringRef | getArgument () const override |
| Return the command line argument used when registering this pass. | |
| ::llvm::StringRef | getDescription () const override |
| Return the command line description used when registering this pass. | |
| ::llvm::StringRef | getName () const override |
| Returns the derived pass name. | |
| std::unique_ptr<::mlir::Pass > | clonePass () const override |
| A clone method to create a copy of this pass. | |
| void | getDependentDialects (::mlir::DialectRegistry ®istry) const override |
| Return the dialect that must be loaded in the context before this pass. | |
| AsyncParallelForPassBase (AsyncParallelForPassOptions options) | |
| Explicitly declare the TypeID for this class. | |
| Public Member Functions inherited from mlir::OperationPass< ModuleOp > | |
| ~OperationPass () override=default | |
| Public Member Functions inherited from mlir::Pass | |
| virtual | ~Pass ()=default |
| TypeID | getTypeID () const |
| Returns the unique identifier that corresponds to this pass. | |
| const PassInfo * | lookupPassInfo () const |
| Returns the pass info for this pass, or null if unknown. | |
| virtual void | getDependentDialects (DialectRegistry ®istry) const |
| Register dependent dialects for the current pass. | |
| std::optional< StringRef > | getOpName () const |
| Returns the name of the operation that this pass operates on, or std::nullopt if this is a generic OperationPass. | |
| virtual LogicalResult | initializeOptions (StringRef options, function_ref< LogicalResult(const Twine &)> errorHandler) |
| Attempt to initialize the options of this pass from the given string. | |
| void | printAsTextualPipeline (raw_ostream &os, bool pretty=false) |
| Prints out the pass in the textual representation of pipelines. | |
| ArrayRef< Statistic * > | getStatistics () const |
| Returns the main statistics for this pass instance. | |
| MutableArrayRef< Statistic * > | getStatistics () |
| const Pass * | getThreadingSibling () const |
| Returns the thread sibling of this pass. | |
| const Pass * | getThreadingSiblingOrThis () const |
| Returns the thread sibling of this pass, or the pass itself it has no sibling. | |
Static Public Member Functions | |
| static constexpr ::llvm::StringLiteral | getArgumentName () |
| Returns the command-line argument attached to this pass. | |
| static constexpr ::llvm::StringLiteral | getPassName () |
| Returns the derived pass name. | |
| static bool | classof (const ::mlir::Pass *pass) |
| Support isa/dyn_cast functionality for the derived pass class. | |
Protected Attributes | |
| ::mlir::Pass::Option< bool > | asyncDispatch {*this, "async-dispatch", ::llvm::cl::desc(R"PO(Dispatch async compute tasks using recursive work splitting. If `false` async compute tasks will be launched using simple for loop in the caller thread.)PO"), ::llvm::cl::init(true)} |
| ::mlir::Pass::Option< int32_t > | numWorkerThreads {*this, "num-workers", ::llvm::cl::desc(R"PO(The number of available workers to execute async operations. If `-1` the value will be retrieved from the runtime.)PO"), ::llvm::cl::init(8)} |
| ::mlir::Pass::Option< int32_t > | minTaskSize {*this, "min-task-size", ::llvm::cl::desc(R"PO(The minimum task size for sharding parallel operation.)PO"), ::llvm::cl::init(1000)} |
Friends | |
| std::unique_ptr<::mlir::Pass > | createAsyncParallelForPass () |
| std::unique_ptr<::mlir::Pass > | createAsyncParallelForPass (AsyncParallelForPassOptions options) |
Additional Inherited Members | |
| Protected Member Functions inherited from mlir::OperationPass< ModuleOp > | |
| OperationPass (TypeID passID) | |
| OperationPass & | operator= (const OperationPass &)=delete |
| bool | canScheduleOn (RegisteredOperationName opName) const final |
| Indicate if the current pass can be scheduled on the given operation type. | |
| ModuleOp | getOperation () |
| Return the current operation being transformed. | |
| AnalysisT & | getAnalysis () |
| Query an analysis for the current operation of the specific derived operation type. | |
| Protected Member Functions inherited from mlir::Pass | |
| Pass (TypeID passID, std::optional< StringRef > opName=std::nullopt) | |
| Pass (const Pass &other) | |
| Pass & | operator= (const Pass &)=delete |
| Pass (Pass &&)=delete | |
| Pass & | operator= (Pass &&)=delete |
| detail::PassExecutionState & | getPassState () |
| Returns the current pass state. | |
| MLIRContext & | getContext () |
| Return the MLIR context for the current operation being transformed. | |
| virtual void | runOnOperation ()=0 |
| The polymorphic API that runs the pass over the currently held operation. | |
| virtual LogicalResult | initialize (MLIRContext *context) |
| Initialize any complex state necessary for running this pass. | |
| LogicalResult | runPipeline (OpPassManager &pipeline, Operation *op) |
| Schedule an arbitrary pass pipeline on the provided operation. | |
| std::unique_ptr< Pass > | clone () const |
| A clone method to create a copy of this pass. | |
| Operation * | getOperation () |
| Return the current operation being transformed. | |
| void | signalPassFailure () |
| Signal that some invariant was broken when running. | |
| template<typename AnalysisT> | |
| AnalysisT & | getAnalysis () |
| Query an analysis for the current ir unit. | |
| template<typename AnalysisT, typename OpT> | |
| AnalysisT & | getAnalysis () |
| Query an analysis for the current ir unit of a specific derived operation type. | |
| template<typename AnalysisT> | |
| std::optional< std::reference_wrapper< AnalysisT > > | getCachedAnalysis () |
| Query a cached instance of an analysis for the current ir unit if one exists. | |
| void | markAllAnalysesPreserved () |
| Mark all analyses as preserved. | |
| template<typename... AnalysesT> | |
| void | markAnalysesPreserved () |
| Mark the provided analyses as preserved. | |
| void | markAnalysesPreserved (TypeID id) |
| template<typename AnalysisT> | |
| std::optional< std::reference_wrapper< AnalysisT > > | getCachedParentAnalysis (Operation *parent) |
| Returns the analysis for the given parent operation if it exists. | |
| template<typename AnalysisT> | |
| std::optional< std::reference_wrapper< AnalysisT > > | getCachedParentAnalysis () |
| Returns the analysis for the parent operation if it exists. | |
| template<typename AnalysisT> | |
| std::optional< std::reference_wrapper< AnalysisT > > | getCachedChildAnalysis (Operation *child) |
| Returns the analysis for the given child operation if it exists. | |
| template<typename AnalysisT> | |
| AnalysisT & | getChildAnalysis (Operation *child) |
| Returns the analysis for the given child operation, or creates it if it doesn't exist. | |
| template<typename AnalysisT, typename OpTy> | |
| AnalysisT & | getChildAnalysis (OpTy child) |
| Returns the analysis for the given child operation of specific derived operation type, or creates it if it doesn't exist. | |
| AnalysisManager | getAnalysisManager () |
| Returns the current analysis manager. | |
| void | copyOptionValuesFrom (const Pass *other) |
| Copy the option values from 'other', which is another instance of this pass. | |
| Static Protected Member Functions inherited from mlir::OperationPass< ModuleOp > | |
| static bool | classof (const Pass *pass) |
| Support isa/dyn_cast functionality. | |
Definition at line 116 of file AsyncParallelFor.cpp.
| using mlir::impl::AsyncParallelForPassBase< DerivedT >::Base = AsyncParallelForPassBase |
Definition at line 118 of file AsyncParallelFor.cpp.
|
inline |
Definition at line 120 of file AsyncParallelFor.cpp.
References asyncDispatch.
|
inline |
Definition at line 121 of file AsyncParallelFor.cpp.
References numWorkerThreads.
|
delete |
|
default |
|
inline |
Explicitly declare the TypeID for this class.
We declare an explicit private instantiation because Pass classes should only be visible by the current library.
Definition at line 164 of file AsyncParallelFor.cpp.
|
inlinestatic |
Support isa/dyn_cast functionality for the derived pass class.
Definition at line 142 of file AsyncParallelFor.cpp.
|
inlineoverridevirtual |
A clone method to create a copy of this pass.
Implements mlir::Pass.
Definition at line 147 of file AsyncParallelFor.cpp.
|
inlineoverridevirtual |
Return the command line argument used when registering this pass.
Return an empty string if one does not exist.
Reimplemented from mlir::Pass.
Definition at line 131 of file AsyncParallelFor.cpp.
|
inlinestatic |
Returns the command-line argument attached to this pass.
Definition at line 128 of file AsyncParallelFor.cpp.
|
inlineoverride |
Return the dialect that must be loaded in the context before this pass.
Definition at line 152 of file AsyncParallelFor.cpp.
|
inlineoverridevirtual |
Return the command line description used when registering this pass.
Return an empty string if one does not exist.
Reimplemented from mlir::Pass.
Definition at line 133 of file AsyncParallelFor.cpp.
|
inlineoverridevirtual |
Returns the derived pass name.
Implements mlir::Pass.
Definition at line 139 of file AsyncParallelFor.cpp.
|
inlinestatic |
Returns the derived pass name.
Definition at line 136 of file AsyncParallelFor.cpp.
|
delete |
|
delete |
|
friend |
Definition at line 175 of file AsyncParallelFor.cpp.
|
friend |
Definition at line 179 of file AsyncParallelFor.cpp.
|
protected |
Definition at line 170 of file AsyncParallelFor.cpp.
Referenced by AsyncParallelForPassBase().
|
protected |
Definition at line 172 of file AsyncParallelFor.cpp.
|
protected |
Definition at line 171 of file AsyncParallelFor.cpp.
Referenced by AsyncParallelForPassBase().