Skip to content

Commit 726c442

Browse files
authored
Add lower threshold for multithreading
1 parent dcfc5cf commit 726c442

2 files changed

Lines changed: 12 additions & 2 deletions

File tree

interface/lapack/getrf.c

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,14 @@ int NAME(blasint *M, blasint *N, FLOAT *a, blasint *ldA, blasint *ipiv, blasint
9595

9696
#ifdef SMP
9797
args.common = NULL;
98-
args.nthreads = num_cpu_avail(4);
98+
#ifndef DOUBLE
99+
if (args.m*args.n < 40000)
100+
#else
101+
if (args.m*args.n < 10000)
102+
#endif
103+
args.nthreads=1;
104+
else
105+
args.nthreads = num_cpu_avail(4);
99106

100107
if (args.nthreads == 1) {
101108
#endif

interface/lapack/zgetrf.c

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,10 @@ int NAME(blasint *M, blasint *N, FLOAT *a, blasint *ldA, blasint *ipiv, blasint
9595

9696
#ifdef SMP
9797
args.common = NULL;
98-
args.nthreads = num_cpu_avail(4);
98+
if (args.m*args.n <10000)
99+
args.nthreads = 1;
100+
else
101+
args.nthreads = num_cpu_avail(4);
99102

100103
if (args.nthreads == 1) {
101104
#endif

0 commit comments

Comments
 (0)