3 #ifndef CAFFE2_UTILS_PTHREADPOOL_H_ 4 #define CAFFE2_UTILS_PTHREADPOOL_H_ 6 #include "ThreadPoolCommon.h" 13 typedef void (*pthreadpool_function_1d_t)(
void*, size_t);
14 typedef void (*pthreadpool_function_1d_tiled_t)(
void*, size_t, size_t);
15 typedef void (*pthreadpool_function_2d_t)(
void*, size_t, size_t);
16 typedef void (*pthreadpool_function_2d_tiled_t)(
void*, size_t, size_t, size_t, size_t);
17 typedef void (*pthreadpool_function_3d_t)(
void*, size_t, size_t, size_t);
33 pthreadpool_t pthreadpool_create(
size_t threads_count);
42 size_t pthreadpool_get_threads_count(pthreadpool_t threadpool);
60 void pthreadpool_compute_1d(
61 pthreadpool_t threadpool,
62 pthreadpool_function_1d_t
function,
66 void pthreadpool_compute_1d_tiled(
67 pthreadpool_t threadpool,
68 pthreadpool_function_1d_tiled_t
function,
73 void pthreadpool_compute_2d(
74 pthreadpool_t threadpool,
75 pthreadpool_function_2d_t
function,
80 void pthreadpool_compute_2d_tiled(
81 pthreadpool_t threadpool,
82 pthreadpool_function_2d_tiled_t
function,
97 void pthreadpool_destroy(pthreadpool_t threadpool);
103 #endif // CAFFE2_UTILS_PTHREADPOOL_H_