Halide 20.0.0
Halide compiler and libraries
 
Loading...
Searching...
No Matches
Halide::Runtime::Internal::work_queue_t Struct Reference

#include <thread_pool_common.h>

Public Member Functions

ALWAYS_INLINE bool running () const
 
ALWAYS_INLINE void assert_zeroed () const
 
ALWAYS_INLINE void reset ()
 

Public Attributes

halide_mutex mutex
 
int desired_threads_working
 
int zero_marker
 
workjobs
 
int threads_created
 
int a_team_size
 
int target_a_team_size
 
halide_cond_with_spinning wake_a_team
 
halide_cond_with_spinning wake_b_team
 
halide_cond_with_spinning wake_owners
 
int workers_sleeping
 
int owners_sleeping
 
halide_thread * threads [MAX_THREADS]
 
bool shutdown
 
bool initialized
 
int threads_reserved
 

Detailed Description

Definition at line 147 of file thread_pool_common.h.

Member Function Documentation

◆ running()

ALWAYS_INLINE bool Halide::Runtime::Internal::work_queue_t::running ( ) const
inline

Definition at line 194 of file thread_pool_common.h.

References ALWAYS_INLINE, and shutdown.

◆ assert_zeroed()

ALWAYS_INLINE void Halide::Runtime::Internal::work_queue_t::assert_zeroed ( ) const
inline

Definition at line 199 of file thread_pool_common.h.

References ALWAYS_INLINE, and halide_abort_if_false.

◆ reset()

ALWAYS_INLINE void Halide::Runtime::Internal::work_queue_t::reset ( )
inline

Definition at line 211 of file thread_pool_common.h.

References ALWAYS_INLINE, and memset().

Member Data Documentation

◆ mutex

halide_mutex Halide::Runtime::Internal::work_queue_t::mutex

Definition at line 149 of file thread_pool_common.h.

◆ desired_threads_working

int Halide::Runtime::Internal::work_queue_t::desired_threads_working

Definition at line 152 of file thread_pool_common.h.

◆ zero_marker

int Halide::Runtime::Internal::work_queue_t::zero_marker

Definition at line 156 of file thread_pool_common.h.

◆ jobs

work* Halide::Runtime::Internal::work_queue_t::jobs

Definition at line 159 of file thread_pool_common.h.

◆ threads_created

int Halide::Runtime::Internal::work_queue_t::threads_created

Definition at line 162 of file thread_pool_common.h.

◆ a_team_size

int Halide::Runtime::Internal::work_queue_t::a_team_size

Definition at line 169 of file thread_pool_common.h.

◆ target_a_team_size

int Halide::Runtime::Internal::work_queue_t::target_a_team_size

Definition at line 169 of file thread_pool_common.h.

◆ wake_a_team

halide_cond_with_spinning Halide::Runtime::Internal::work_queue_t::wake_a_team

Definition at line 175 of file thread_pool_common.h.

◆ wake_b_team

halide_cond_with_spinning Halide::Runtime::Internal::work_queue_t::wake_b_team

Definition at line 175 of file thread_pool_common.h.

◆ wake_owners

halide_cond_with_spinning Halide::Runtime::Internal::work_queue_t::wake_owners

Definition at line 175 of file thread_pool_common.h.

◆ workers_sleeping

int Halide::Runtime::Internal::work_queue_t::workers_sleeping

Definition at line 179 of file thread_pool_common.h.

◆ owners_sleeping

int Halide::Runtime::Internal::work_queue_t::owners_sleeping

Definition at line 179 of file thread_pool_common.h.

◆ threads

halide_thread* Halide::Runtime::Internal::work_queue_t::threads[MAX_THREADS]

Definition at line 182 of file thread_pool_common.h.

◆ shutdown

bool Halide::Runtime::Internal::work_queue_t::shutdown

Definition at line 186 of file thread_pool_common.h.

Referenced by running().

◆ initialized

bool Halide::Runtime::Internal::work_queue_t::initialized

Definition at line 186 of file thread_pool_common.h.

◆ threads_reserved

int Halide::Runtime::Internal::work_queue_t::threads_reserved

Definition at line 192 of file thread_pool_common.h.


The documentation for this struct was generated from the following file: