MLIR  20.0.0git
Classes | Namespaces | Functions
AsyncRuntime.cpp File Reference
#include "mlir/ExecutionEngine/AsyncRuntime.h"
#include <atomic>
#include <cassert>
#include <condition_variable>
#include <functional>
#include <iostream>
#include <mutex>
#include <thread>
#include <vector>
#include "llvm/ADT/StringMap.h"
#include "llvm/Support/ThreadPool.h"

Go to the source code of this file.

Classes

struct  mlir::runtime::AsyncToken
 
struct  mlir::runtime::AsyncValue
 
struct  mlir::runtime::AsyncGroup
 

Namespaces

 mlir
 Include the generated interface declarations.
 
 mlir::runtime
 

Functions

static std::unique_ptr< AsyncRuntime > & mlir::runtime::getDefaultAsyncRuntimeInstance ()
 
static void mlir::runtime::resetDefaultAsyncRuntime ()
 
static AsyncRuntime * mlir::runtime::getDefaultAsyncRuntime ()
 
MLIR_ASYNC_RUNTIME_EXPORT void mlir::runtime::mlirAsyncRuntimeAddRef (RefCountedObjPtr, int64_t)
 
MLIR_ASYNC_RUNTIME_EXPORT void mlir::runtime::mlirAsyncRuntimeDropRef (RefCountedObjPtr, int64_t)
 
MLIR_ASYNC_RUNTIME_EXPORT AsyncTokenmlir::runtime::mlirAsyncRuntimeCreateToken ()
 
MLIR_ASYNC_RUNTIME_EXPORT AsyncValuemlir::runtime::mlirAsyncRuntimeCreateValue (int64_t)
 
MLIR_ASYNC_RUNTIME_EXPORT AsyncGroupmlir::runtime::mlirAsyncRuntimeCreateGroup (int64_t size)
 
MLIR_ASYNC_RUNTIME_EXPORT int64_t mlir::runtime::mlirAsyncRuntimeAddTokenToGroup (AsyncToken *, AsyncGroup *)
 
static void mlir::runtime::setTokenState (AsyncToken *token, State state)
 
static void mlir::runtime::setValueState (AsyncValue *value, State state)
 
MLIR_ASYNC_RUNTIME_EXPORT void mlir::runtime::mlirAsyncRuntimeEmplaceToken (AsyncToken *)
 
MLIR_ASYNC_RUNTIME_EXPORT void mlir::runtime::mlirAsyncRuntimeEmplaceValue (AsyncValue *)
 
MLIR_ASYNC_RUNTIME_EXPORT void mlir::runtime::mlirAsyncRuntimeSetTokenError (AsyncToken *)
 
MLIR_ASYNC_RUNTIME_EXPORT void mlir::runtime::mlirAsyncRuntimeSetValueError (AsyncValue *)
 
MLIR_ASYNC_RUNTIME_EXPORT bool mlir::runtime::mlirAsyncRuntimeIsTokenError (AsyncToken *)
 
MLIR_ASYNC_RUNTIME_EXPORT bool mlir::runtime::mlirAsyncRuntimeIsValueError (AsyncValue *)
 
MLIR_ASYNC_RUNTIME_EXPORT bool mlir::runtime::mlirAsyncRuntimeIsGroupError (AsyncGroup *)
 
MLIR_ASYNC_RUNTIME_EXPORT void mlir::runtime::mlirAsyncRuntimeAwaitToken (AsyncToken *)
 
MLIR_ASYNC_RUNTIME_EXPORT void mlir::runtime::mlirAsyncRuntimeAwaitValue (AsyncValue *)
 
MLIR_ASYNC_RUNTIME_EXPORT void mlir::runtime::mlirAsyncRuntimeAwaitAllInGroup (AsyncGroup *)
 
MLIR_ASYNC_RUNTIME_EXPORT ValueStorage mlir::runtime::mlirAsyncRuntimeGetValueStorage (AsyncValue *)
 
MLIR_ASYNC_RUNTIME_EXPORT void mlir::runtime::mlirAsyncRuntimeExecute (CoroHandle, CoroResume)
 
MLIR_ASYNC_RUNTIME_EXPORT void mlir::runtime::mlirAsyncRuntimeAwaitTokenAndExecute (AsyncToken *, CoroHandle, CoroResume)
 
MLIR_ASYNC_RUNTIME_EXPORT void mlir::runtime::mlirAsyncRuntimeAwaitValueAndExecute (AsyncValue *, CoroHandle, CoroResume)
 
MLIR_ASYNC_RUNTIME_EXPORT void mlir::runtime::mlirAsyncRuntimeAwaitAllInGroupAndExecute (AsyncGroup *, CoroHandle, CoroResume)
 
MLIR_ASYNC_RUNTIME_EXPORT int64_t mlir::runtime::mlirAsyncRuntimGetNumWorkerThreads ()
 
MLIR_ASYNC_RUNTIME_EXPORT void mlir::runtime::mlirAsyncRuntimePrintCurrentThreadId ()
 
MLIR_ASYNC_RUNTIME_EXPORT void mlir::runtime::__mlir_execution_engine_init (llvm::StringMap< void * > &exportSymbols)
 
MLIR_ASYNC_RUNTIME_EXPORT void mlir::runtime::__mlir_execution_engine_destroy ()