Skip to content

Commit 80cdfed

Browse files
authored
Use OMP_ADAPTIVE setting to choose between static and dynamic OMP threadpool size
1 parent 08e3754 commit 80cdfed

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

driver/others/blas_server_omp.c

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -403,6 +403,7 @@ int exec_blas(BLASLONG num, blas_queue_t *queue){
403403
break;
404404
}
405405

406+
if (openblas_omp_adaptive_env() != 0) {
406407
#pragma omp parallel for num_threads(num) schedule(OMP_SCHED)
407408
for (i = 0; i < num; i ++) {
408409

@@ -412,6 +413,17 @@ int exec_blas(BLASLONG num, blas_queue_t *queue){
412413

413414
exec_threads(&queue[i], buf_index);
414415
}
416+
} else {
417+
#pragma omp parallel for schedule(OMP_SCHED)
418+
for (i = 0; i < num; i ++) {
419+
420+
#ifndef USE_SIMPLE_THREADED_LEVEL3
421+
queue[i].position = i;
422+
#endif
423+
424+
exec_threads(&queue[i], buf_index);
425+
}
426+
}
415427

416428
#ifdef HAVE_C11
417429
atomic_store(&blas_buffer_inuse[buf_index], false);

0 commit comments

Comments
 (0)