Halide
12.0.1
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 201 of file HalideRuntime.h.
halide_loop_task_t halide_parallel_task_t::fn |
Definition at line 204 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 207 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 210 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 214 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 215 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 219 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 238 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 243 of file HalideRuntime.h.
Referenced by halide_default_do_par_for(), and Halide::Runtime::Internal::worker_thread_already_locked().