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 699 of file EigenNonBlockingThreadPool.h.
typedef RunQueue<Task, Tag, 1024> onnxruntime::concurrency::ThreadPoolTempl< Environment >::Queue |
Definition at line 768 of file EigenNonBlockingThreadPool.h.
typedef std::function<void()> onnxruntime::concurrency::ThreadPoolTempl< Environment >::Task |
Definition at line 767 of file EigenNonBlockingThreadPool.h.
|
inline |
Definition at line 770 of file EigenNonBlockingThreadPool.h.
|
inlineoverride |
Definition at line 810 of file EigenNonBlockingThreadPool.h.
|
inlinefinal |
Definition at line 1319 of file EigenNonBlockingThreadPool.h.
|
inline |
Definition at line 1331 of file EigenNonBlockingThreadPool.h.
|
inline |
Definition at line 1327 of file EigenNonBlockingThreadPool.h.
|
inlineoverridevirtual |
Implements onnxruntime::concurrency::ExtendedThreadPoolInterface.
Definition at line 950 of file EigenNonBlockingThreadPool.h.
|
inline |
Definition at line 872 of file EigenNonBlockingThreadPool.h.
|
inline |
Definition at line 1056 of file EigenNonBlockingThreadPool.h.
|
inlinefinal |
Definition at line 1315 of file EigenNonBlockingThreadPool.h.
|
inlineoverridevirtual |
Implements onnxruntime::concurrency::ExtendedThreadPoolInterface.
Definition at line 1301 of file EigenNonBlockingThreadPool.h.
|
inline |
Definition at line 1155 of file EigenNonBlockingThreadPool.h.
|
inlineoverridevirtual |
Implements onnxruntime::concurrency::ExtendedThreadPoolInterface.
Definition at line 1240 of file EigenNonBlockingThreadPool.h.
|
inlineoverride |
Definition at line 819 of file EigenNonBlockingThreadPool.h.
|
inline |
Definition at line 1085 of file EigenNonBlockingThreadPool.h.
|
inlineoverridevirtual |
Implements onnxruntime::concurrency::ExtendedThreadPoolInterface.
Definition at line 864 of file EigenNonBlockingThreadPool.h.
|
inline |
Definition at line 847 of file EigenNonBlockingThreadPool.h.
|
inlineoverridevirtual |
Implements onnxruntime::concurrency::ExtendedThreadPoolInterface.
Definition at line 725 of file EigenNonBlockingThreadPool.h.
|
inlineoverridevirtual |
Implements onnxruntime::concurrency::ExtendedThreadPoolInterface.
Definition at line 729 of file EigenNonBlockingThreadPool.h.
|
inline |
Definition at line 1075 of file EigenNonBlockingThreadPool.h.