HDK
|
#include <EigenNonBlockingThreadPool.h>
Classes | |
struct | Tag |
Public Types | |
typedef std::function< void()> | Task |
typedef RunQueue< Task, Tag, 1024 > | Queue |
Public Member Functions | |
void | StartProfiling () override |
std::string | StopProfiling () override |
ThreadPoolTempl (const CHAR_TYPE *name, int num_threads, bool allow_spinning, Environment &env, const ThreadOptions &thread_options) | |
~ThreadPoolTempl () override | |
void | Schedule (std::function< void()> fn) override |
void | StartParallelSectionInternal (PerThread &pt, ThreadPoolParallelSection &ps) |
void | StartParallelSection (ThreadPoolParallelSection &ps) override |
void | EndParallelSectionInternal (PerThread &pt, ThreadPoolParallelSection &ps) |
void | EndParallelSection (ThreadPoolParallelSection &ps) override |
void | InitializePreferredWorkers (InlinedVector< int > &preferred_workers) |
void | UpdatePreferredWorker (InlinedVector< int > &preferred_workers, unsigned par_idx) |
void | ScheduleOnPreferredWorkers (PerThread &pt, ThreadPoolParallelSection &ps, InlinedVector< int > &preferred_workers, unsigned par_idx_start, unsigned par_idx_end, std::function< void(unsigned)> worker_fn) |
void | RunInParallelInternal (PerThread &pt, ThreadPoolParallelSection &ps, unsigned new_dop, bool dispatch_async, std::function< void(unsigned)> worker_fn) |
void | RunInParallelSection (ThreadPoolParallelSection &ps, std::function< void(unsigned idx)> fn, unsigned n, std::ptrdiff_t block_size) override |
void | RunInParallel (std::function< void(unsigned idx)> fn, unsigned n, std::ptrdiff_t block_size) override |
int | NumThreads () const final |
int | CurrentThreadId () const final |
void | EnableSpinning () |
void | DisableSpinning () |
Definition at line 671 of file EigenNonBlockingThreadPool.h.
typedef RunQueue<Task, Tag, 1024> onnxruntime::concurrency::ThreadPoolTempl< Environment >::Queue |
Definition at line 740 of file EigenNonBlockingThreadPool.h.
typedef std::function<void()> onnxruntime::concurrency::ThreadPoolTempl< Environment >::Task |
Definition at line 739 of file EigenNonBlockingThreadPool.h.
|
inline |
Definition at line 742 of file EigenNonBlockingThreadPool.h.
|
inlineoverride |
Definition at line 781 of file EigenNonBlockingThreadPool.h.
|
inlinefinal |
Definition at line 1290 of file EigenNonBlockingThreadPool.h.
|
inline |
Definition at line 1302 of file EigenNonBlockingThreadPool.h.
|
inline |
Definition at line 1298 of file EigenNonBlockingThreadPool.h.
|
inlineoverridevirtual |
Implements onnxruntime::concurrency::ExtendedThreadPoolInterface.
Definition at line 921 of file EigenNonBlockingThreadPool.h.
|
inline |
Definition at line 843 of file EigenNonBlockingThreadPool.h.
|
inline |
Definition at line 1027 of file EigenNonBlockingThreadPool.h.
|
inlinefinal |
Definition at line 1286 of file EigenNonBlockingThreadPool.h.
|
inlineoverridevirtual |
Implements onnxruntime::concurrency::ExtendedThreadPoolInterface.
Definition at line 1272 of file EigenNonBlockingThreadPool.h.
|
inline |
Definition at line 1126 of file EigenNonBlockingThreadPool.h.
|
inlineoverridevirtual |
Implements onnxruntime::concurrency::ExtendedThreadPoolInterface.
Definition at line 1211 of file EigenNonBlockingThreadPool.h.
|
inlineoverride |
Definition at line 790 of file EigenNonBlockingThreadPool.h.
|
inline |
Definition at line 1056 of file EigenNonBlockingThreadPool.h.
|
inlineoverridevirtual |
Implements onnxruntime::concurrency::ExtendedThreadPoolInterface.
Definition at line 835 of file EigenNonBlockingThreadPool.h.
|
inline |
Definition at line 818 of file EigenNonBlockingThreadPool.h.
|
inlineoverridevirtual |
Implements onnxruntime::concurrency::ExtendedThreadPoolInterface.
Definition at line 697 of file EigenNonBlockingThreadPool.h.
|
inlineoverridevirtual |
Implements onnxruntime::concurrency::ExtendedThreadPoolInterface.
Definition at line 701 of file EigenNonBlockingThreadPool.h.
|
inline |
Definition at line 1046 of file EigenNonBlockingThreadPool.h.