diff options
author | Marat Dukhan <marat@fb.com> | 2018-10-08 00:19:36 -0700 |
---|---|---|
committer | Marat Dukhan <marat@fb.com> | 2018-10-08 00:19:36 -0700 |
commit | 13da0b4c21d17f94150713366420baaf1b5a46f4 (patch) | |
tree | 164be7551021064094501d005ab712fc9b4bef11 /include | |
parent | 3fb19c58b46f3cbc78a27c7b207a6eb7946633c0 (diff) | |
download | pthreadpool-13da0b4c21d17f94150713366420baaf1b5a46f4.tar.gz |
Support 3D and 4D tiled computation
Diffstat (limited to 'include')
-rw-r--r-- | include/pthreadpool.h | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/include/pthreadpool.h b/include/pthreadpool.h index fa2bb1e..a99105e 100644 --- a/include/pthreadpool.h +++ b/include/pthreadpool.h @@ -9,7 +9,8 @@ typedef void (*pthreadpool_function_1d_t)(void*, size_t); typedef void (*pthreadpool_function_1d_tiled_t)(void*, size_t, size_t); typedef void (*pthreadpool_function_2d_t)(void*, size_t, size_t); typedef void (*pthreadpool_function_2d_tiled_t)(void*, size_t, size_t, size_t, size_t); -typedef void (*pthreadpool_function_3d_t)(void*, size_t, size_t, size_t); +typedef void (*pthreadpool_function_3d_tiled_t)(void*, size_t, size_t, size_t, size_t, size_t, size_t); +typedef void (*pthreadpool_function_4d_tiled_t)(void*, size_t, size_t, size_t, size_t, size_t, size_t, size_t, size_t); #ifdef __cplusplus extern "C" { @@ -81,6 +82,30 @@ void pthreadpool_compute_2d_tiled( size_t tile_i, size_t tile_j); +void pthreadpool_compute_3d_tiled( + pthreadpool_t threadpool, + pthreadpool_function_3d_tiled_t function, + void* argument, + size_t range_i, + size_t range_j, + size_t range_k, + size_t tile_i, + size_t tile_j, + size_t tile_k); + +void pthreadpool_compute_4d_tiled( + pthreadpool_t threadpool, + pthreadpool_function_4d_tiled_t function, + void* argument, + size_t range_i, + size_t range_j, + size_t range_k, + size_t range_l, + size_t tile_i, + size_t tile_j, + size_t tile_k, + size_t tile_l); + /** * Terminates threads in the thread pool and releases associated resources. * |