add sync argument to threads callback

This commit is contained in:
Steven G. Johnson 2019-09-12 16:23:41 -04:00
parent 5daf8c9d62
commit b70c0985e3
3 changed files with 3 additions and 3 deletions

View File

@ -27,7 +27,7 @@ char* openblas_get_corename(void);
/*Set the threading backend to a custom callback.*/
typedef void (*openblas_dojob_callback)(int thread_num, void *jobdata, void *dojob_data);
typedef void (*openblas_threads_callback)(void *callback_data, openblas_dojob_callback dojob, int numjobs, size_t jobdata_elsize, void *jobdata, void *dojob_data);
typedef void (*openblas_threads_callback)(void *callback_data, int sync, openblas_dojob_callback dojob, int numjobs, size_t jobdata_elsize, void *jobdata, void *dojob_data);
void openblas_set_threads_callback(openblas_threads_callback callback, void *callback_data);
/* Get the parallelization type which is used by OpenBLAS */

View File

@ -48,7 +48,7 @@ int BLASFUNC(xerbla)(char *, blasint *info, blasint);
void openblas_set_num_threads_(int *);
typedef void (*openblas_dojob_callback)(int thread_num, void *jobdata, void *dojob_data);
typedef void (*openblas_threads_callback)(void *callback_data, openblas_dojob_callback dojob, int numjobs, size_t jobdata_elsize, void *jobdata, void *dojob_data);
typedef void (*openblas_threads_callback)(void *callback_data, int sync, openblas_dojob_callback dojob, int numjobs, size_t jobdata_elsize, void *jobdata, void *dojob_data);
void openblas_set_threads_callback(openblas_threads_callback callback, void *callback_data);
extern openblas_threads_callback openblas_threads_callback_;
extern void *openblas_threads_callback_data_;

View File

@ -339,7 +339,7 @@ int exec_blas(BLASLONG num, blas_queue_t *queue){
for (i = 0; i < num; i ++)
queue[i].position = i;
#endif
openblas_threads_callback_(openblas_threads_callback_data_, (openblas_dojob_callback) exec_threads, num, sizeof(blas_queue_t), (void*) queue, (void*) &buf_index);
openblas_threads_callback_(openblas_threads_callback_data_, 1, (openblas_dojob_callback) exec_threads, num, sizeof(blas_queue_t), (void*) queue, (void*) &buf_index);
return;
}