Halide 19.0.0
Halide compiler and libraries
|
#include <thread_pool_common.h>
Public Member Functions | |
ALWAYS_INLINE bool | make_runnable () |
ALWAYS_INLINE bool | running () const |
Public Attributes | |
halide_parallel_task_t | task |
halide_task_t | task_fn |
work * | next_job |
work * | siblings |
int | sibling_count |
work * | parent_job |
int | threads_reserved |
void * | user_context |
int | active_workers |
int | exit_status |
int | next_semaphore |
bool | owner_is_sleeping |
Definition at line 33 of file thread_pool_common.h.
|
inline |
Definition at line 53 of file thread_pool_common.h.
References halide_semaphore_acquire_t::count, halide_default_semaphore_try_acquire(), next_semaphore, halide_parallel_task_t::num_semaphores, halide_semaphore_acquire_t::semaphore, halide_parallel_task_t::semaphores, and task.
Referenced by Halide::Runtime::Internal::worker_thread_already_locked().
|
inline |
Definition at line 69 of file thread_pool_common.h.
References active_workers, halide_parallel_task_t::extent, and task.
Referenced by Halide::Runtime::Internal::worker_thread_already_locked().
halide_parallel_task_t Halide::Runtime::Internal::work::task |
Definition at line 34 of file thread_pool_common.h.
Referenced by Halide::Runtime::Internal::enqueue_work_already_locked(), halide_default_do_par_for(), halide_default_do_parallel_tasks(), make_runnable(), running(), and Halide::Runtime::Internal::worker_thread_already_locked().
halide_task_t Halide::Runtime::Internal::work::task_fn |
Definition at line 38 of file thread_pool_common.h.
Referenced by halide_default_do_par_for(), halide_default_do_parallel_tasks(), and Halide::Runtime::Internal::worker_thread_already_locked().
work* Halide::Runtime::Internal::work::next_job |
Definition at line 40 of file thread_pool_common.h.
Referenced by Halide::Runtime::Internal::enqueue_work_already_locked(), and Halide::Runtime::Internal::worker_thread_already_locked().
work* Halide::Runtime::Internal::work::siblings |
Definition at line 41 of file thread_pool_common.h.
Referenced by Halide::Runtime::Internal::enqueue_work_already_locked(), halide_default_do_par_for(), and Halide::Runtime::Internal::worker_thread_already_locked().
int Halide::Runtime::Internal::work::sibling_count |
Definition at line 42 of file thread_pool_common.h.
Referenced by Halide::Runtime::Internal::enqueue_work_already_locked(), halide_default_do_par_for(), and Halide::Runtime::Internal::worker_thread_already_locked().
work* Halide::Runtime::Internal::work::parent_job |
Definition at line 43 of file thread_pool_common.h.
Referenced by halide_default_do_par_for(), halide_default_do_parallel_tasks(), and Halide::Runtime::Internal::worker_thread_already_locked().
int Halide::Runtime::Internal::work::threads_reserved |
Definition at line 44 of file thread_pool_common.h.
Referenced by Halide::Runtime::Internal::enqueue_work_already_locked(), and Halide::Runtime::Internal::worker_thread_already_locked().
void* Halide::Runtime::Internal::work::user_context |
Definition at line 46 of file thread_pool_common.h.
Referenced by halide_default_do_par_for(), halide_default_do_parallel_tasks(), and Halide::Runtime::Internal::worker_thread_already_locked().
int Halide::Runtime::Internal::work::active_workers |
Definition at line 47 of file thread_pool_common.h.
Referenced by Halide::Runtime::Internal::enqueue_work_already_locked(), halide_default_do_par_for(), halide_default_do_parallel_tasks(), running(), and Halide::Runtime::Internal::worker_thread_already_locked().
int Halide::Runtime::Internal::work::exit_status |
Definition at line 48 of file thread_pool_common.h.
Referenced by halide_default_do_par_for(), halide_default_do_parallel_tasks(), and Halide::Runtime::Internal::worker_thread_already_locked().
int Halide::Runtime::Internal::work::next_semaphore |
Definition at line 49 of file thread_pool_common.h.
Referenced by halide_default_do_par_for(), halide_default_do_parallel_tasks(), and make_runnable().
bool Halide::Runtime::Internal::work::owner_is_sleeping |
Definition at line 51 of file thread_pool_common.h.
Referenced by halide_default_do_par_for(), halide_default_do_parallel_tasks(), and Halide::Runtime::Internal::worker_thread_already_locked().