Browse Source

Add openblas_set_num_threads_local()

tags/v0.3.27
Martin Kroeker GitHub 1 year ago
parent
commit
87d31af2ae
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 14 additions and 0 deletions
  1. +1
    -0
      driver/others/blas_server_omp.c
  2. +13
    -0
      driver/others/openblas_set_num_threads.c

+ 1
- 0
driver/others/blas_server_omp.c View File

@@ -69,6 +69,7 @@

int blas_server_avail = 0;
int blas_omp_number_max = 0;
int blas_omp_threads_local = 1;

extern int openblas_omp_adaptive_env(void);



+ 13
- 0
driver/others/openblas_set_num_threads.c View File

@@ -36,11 +36,20 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifdef SMP_SERVER

extern void openblas_set_num_threads(int num_threads) ;
extern int openblas_get_num_threads(void) ;

void openblas_set_num_threads_(int* num_threads){
openblas_set_num_threads(*num_threads);
}

int openblas_set_num_threads_local(int num_threads){
int ret = openblas_get_num_threads();
openblas_set_num_threads(num_threads);
blas_omp_threads_local=num_threads;
return ret;
}


#else
//Single thread

@@ -50,4 +59,8 @@ void openblas_set_num_threads(int num_threads) {
void openblas_set_num_threads_(int* num_threads){

}

int openblas_set_num_threads_local(int num_threads){
return 1;
}
#endif

Loading…
Cancel
Save