Halide 19.0.0
Halide compiler and libraries
|
A parallel task to be passed to halide_do_parallel_tasks. More...
#include <HalideRuntime.h>
Public Attributes | |
halide_loop_task_t | fn |
uint8_t * | closure |
const char * | name |
struct halide_semaphore_acquire_t * | semaphores |
int | num_semaphores |
int | min |
int | extent |
int | min_threads |
bool | serial |
A parallel task to be passed to halide_do_parallel_tasks.
This task may recursively call halide_do_parallel_tasks, and there may be complex dependencies between seemingly unrelated tasks expressed using semaphores. If you are using a custom task system, care must be taken to avoid potential deadlock. This can be done by carefully respecting the static metadata at the end of the task struct.
Definition at line 272 of file HalideRuntime.h.
halide_loop_task_t halide_parallel_task_t::fn |
Definition at line 275 of file HalideRuntime.h.
Referenced by halide_default_do_par_for(), and Halide::Runtime::Internal::worker_thread_already_locked().
uint8_t* halide_parallel_task_t::closure |
Definition at line 278 of file HalideRuntime.h.
Referenced by halide_default_do_par_for(), and Halide::Runtime::Internal::worker_thread_already_locked().
const char* halide_parallel_task_t::name |
Definition at line 281 of file HalideRuntime.h.
Referenced by Halide::Runtime::Internal::enqueue_work_already_locked(), halide_default_do_par_for(), and Halide::Runtime::Internal::worker_thread_already_locked().
struct halide_semaphore_acquire_t* halide_parallel_task_t::semaphores |
Definition at line 285 of file HalideRuntime.h.
Referenced by halide_default_do_par_for(), and Halide::Runtime::Internal::work::make_runnable().
int halide_parallel_task_t::num_semaphores |
Definition at line 286 of file HalideRuntime.h.
Referenced by halide_default_do_par_for(), and Halide::Runtime::Internal::work::make_runnable().
int halide_parallel_task_t::min |
Definition at line 290 of file HalideRuntime.h.
Referenced by halide_default_do_par_for(), and Halide::Runtime::Internal::worker_thread_already_locked().
int halide_parallel_task_t::extent |
int halide_parallel_task_t::min_threads |
Definition at line 309 of file HalideRuntime.h.
Referenced by Halide::Runtime::Internal::enqueue_work_already_locked(), halide_default_do_par_for(), and Halide::Runtime::Internal::worker_thread_already_locked().
bool halide_parallel_task_t::serial |
Definition at line 314 of file HalideRuntime.h.
Referenced by halide_default_do_par_for(), and Halide::Runtime::Internal::worker_thread_already_locked().