diff --git a/interface/zher.c b/interface/zher.c index 0d24984e60..49b1cec03b 100644 --- a/interface/zher.c +++ b/interface/zher.c @@ -177,7 +177,10 @@ void CNAME(enum CBLAS_ORDER order, enum CBLAS_UPLO Uplo, blasint n, FLOAT alpha, buffer = (FLOAT *)blas_memory_alloc(1); #ifdef SMP - nthreads = num_cpu_avail(2); + if (n < 100) + nthreads = 1; + else + nthreads = num_cpu_avail(2); if (nthreads == 1) { #endif diff --git a/interface/zher2.c b/interface/zher2.c index 1cae633ce0..eba4c4f41b 100644 --- a/interface/zher2.c +++ b/interface/zher2.c @@ -186,7 +186,10 @@ void CNAME(enum CBLAS_ORDER order, enum CBLAS_UPLO Uplo, blasint n, void *VALPHA buffer = (FLOAT *)blas_memory_alloc(1); #ifdef SMP - nthreads = num_cpu_avail(2); + if (n < 100) + nthreads = 1; + else + nthreads = num_cpu_avail(2); if (nthreads == 1) { #endif diff --git a/interface/zhpr.c b/interface/zhpr.c index 10507a71fa..34700549e3 100644 --- a/interface/zhpr.c +++ b/interface/zhpr.c @@ -175,7 +175,10 @@ void CNAME(enum CBLAS_ORDER order, buffer = (FLOAT *)blas_memory_alloc(1); #ifdef SMP - nthreads = num_cpu_avail(2); + if (n < 100) + nthreads = 1; + else + nthreads = num_cpu_avail(2); if (nthreads == 1) { #endif diff --git a/interface/zhpr2.c b/interface/zhpr2.c index c9bfb44b05..1cbaaa062b 100644 --- a/interface/zhpr2.c +++ b/interface/zhpr2.c @@ -187,7 +187,10 @@ void CNAME(enum CBLAS_ORDER order, buffer = (FLOAT *)blas_memory_alloc(1); #ifdef SMP - nthreads = num_cpu_avail(2); + if (n < 100) + nthreads = 1; + else + nthreads = num_cpu_avail(2); if (nthreads == 1) { #endif