enabled smp for ger.c and zger.c, but only for 64bit binaries
This commit is contained in:
parent
e1e83a1b71
commit
1fad2b759f
|
@ -42,6 +42,12 @@
|
||||||
#include "functable.h"
|
#include "functable.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef SMP
|
||||||
|
#ifdef __64BIT__
|
||||||
|
#define SMPTEST 1
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
#ifdef XDOUBLE
|
#ifdef XDOUBLE
|
||||||
#define ERROR_NAME "QGER "
|
#define ERROR_NAME "QGER "
|
||||||
#elif defined DOUBLE
|
#elif defined DOUBLE
|
||||||
|
@ -75,7 +81,7 @@ void NAME(blasint *M, blasint *N, FLOAT *Alpha,
|
||||||
blasint incy = *INCY;
|
blasint incy = *INCY;
|
||||||
blasint lda = *LDA;
|
blasint lda = *LDA;
|
||||||
FLOAT *buffer;
|
FLOAT *buffer;
|
||||||
#ifdef SMPBUG
|
#ifdef SMPTEST
|
||||||
int nthreads;
|
int nthreads;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -107,7 +113,7 @@ void CNAME(enum CBLAS_ORDER order,
|
||||||
|
|
||||||
FLOAT *buffer;
|
FLOAT *buffer;
|
||||||
blasint info, t;
|
blasint info, t;
|
||||||
#ifdef SMPBUG
|
#ifdef SMPTEST
|
||||||
int nthreads;
|
int nthreads;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -135,11 +141,11 @@ void CNAME(enum CBLAS_ORDER order,
|
||||||
t = incx;
|
t = incx;
|
||||||
incx = incy;
|
incx = incy;
|
||||||
incy = t;
|
incy = t;
|
||||||
|
/*
|
||||||
buffer = x;
|
buffer = x;
|
||||||
x = y;
|
x = y;
|
||||||
y = buffer;
|
y = buffer;
|
||||||
|
*/
|
||||||
if (lda < MAX(1,m)) info = 9;
|
if (lda < MAX(1,m)) info = 9;
|
||||||
if (incy == 0) info = 7;
|
if (incy == 0) info = 7;
|
||||||
if (incx == 0) info = 5;
|
if (incx == 0) info = 5;
|
||||||
|
@ -167,7 +173,7 @@ void CNAME(enum CBLAS_ORDER order,
|
||||||
|
|
||||||
buffer = (FLOAT *)blas_memory_alloc(1);
|
buffer = (FLOAT *)blas_memory_alloc(1);
|
||||||
|
|
||||||
#ifdef SMPBUG
|
#ifdef SMPTEST
|
||||||
nthreads = num_cpu_avail(2);
|
nthreads = num_cpu_avail(2);
|
||||||
|
|
||||||
|
|
||||||
|
@ -176,7 +182,7 @@ void CNAME(enum CBLAS_ORDER order,
|
||||||
|
|
||||||
GER(m, n, 0, alpha, x, incx, y, incy, a, lda, buffer);
|
GER(m, n, 0, alpha, x, incx, y, incy, a, lda, buffer);
|
||||||
|
|
||||||
#ifdef SMPBUG
|
#ifdef SMPTEST
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
GER_THREAD(m, n, alpha, x, incx, y, incy, a, lda, buffer, nthreads);
|
GER_THREAD(m, n, alpha, x, incx, y, incy, a, lda, buffer, nthreads);
|
||||||
|
|
|
@ -42,6 +42,13 @@
|
||||||
#include "functable.h"
|
#include "functable.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef SMP
|
||||||
|
#ifdef __64BIT__
|
||||||
|
#define SMPTEST 1
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
#ifdef XDOUBLE
|
#ifdef XDOUBLE
|
||||||
#ifndef CONJ
|
#ifndef CONJ
|
||||||
#define ERROR_NAME "XGERU "
|
#define ERROR_NAME "XGERU "
|
||||||
|
@ -109,7 +116,7 @@ void NAME(blasint *M, blasint *N, FLOAT *Alpha,
|
||||||
blasint incy = *INCY;
|
blasint incy = *INCY;
|
||||||
blasint lda = *LDA;
|
blasint lda = *LDA;
|
||||||
FLOAT *buffer;
|
FLOAT *buffer;
|
||||||
#ifdef SMPBUG
|
#ifdef SMPTEST
|
||||||
int nthreads;
|
int nthreads;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -144,7 +151,7 @@ void CNAME(enum CBLAS_ORDER order,
|
||||||
|
|
||||||
FLOAT *buffer;
|
FLOAT *buffer;
|
||||||
blasint info, t;
|
blasint info, t;
|
||||||
#ifdef SMPBUG
|
#ifdef SMPTEST
|
||||||
int nthreads;
|
int nthreads;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -205,7 +212,7 @@ void CNAME(enum CBLAS_ORDER order,
|
||||||
|
|
||||||
buffer = (FLOAT *)blas_memory_alloc(1);
|
buffer = (FLOAT *)blas_memory_alloc(1);
|
||||||
|
|
||||||
#ifdef SMPBUG
|
#ifdef SMPTEST
|
||||||
nthreads = num_cpu_avail(2);
|
nthreads = num_cpu_avail(2);
|
||||||
|
|
||||||
if (nthreads == 1) {
|
if (nthreads == 1) {
|
||||||
|
@ -221,7 +228,7 @@ void CNAME(enum CBLAS_ORDER order,
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef SMPBUG
|
#ifdef SMPTEST
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue