Browse Source

Merge pull request #5149 from martin-frbg/fixup5077-5088

Make the Neoverse GEMM/GEMV throttling code conditional on SMP
tags/v0.3.30
Martin Kroeker GitHub 7 months ago
parent
commit
ef9e3f7159
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
2 changed files with 4 additions and 7 deletions
  1. +2
    -0
      interface/gemm.c
  2. +2
    -7
      interface/gemv.c

+ 2
- 0
interface/gemm.c View File

@@ -177,6 +177,7 @@ static int init_amxtile_permission() {
}
#endif

#ifdef SMP
#ifdef DYNAMIC_ARCH
extern char* gotoblas_corename(void);
#endif
@@ -242,6 +243,7 @@ static inline int get_gemm_optimal_nthreads(double MNK) {
}
}
}
#endif

#ifndef CBLAS



+ 2
- 7
interface/gemv.c View File

@@ -63,6 +63,7 @@ static int (*gemv_thread[])(BLASLONG, BLASLONG, FLOAT, FLOAT *, BLASLONG, FLOAT
};
#endif

#ifdef SMP
#ifdef DYNAMIC_ARCH
extern char* gotoblas_corename(void);
#endif
@@ -108,6 +109,7 @@ static inline int get_gemv_optimal_nthreads(BLASLONG MN) {
else
return num_cpu_avail(2);
}
#endif

#ifndef CBLAS

@@ -248,13 +250,6 @@ void CNAME(enum CBLAS_ORDER order,

if (alpha == ZERO) return;
#if 0
/* this optimization causes stack corruption on x86_64 under OSX, Windows and FreeBSD */
if (trans == 0 && incx == 1 && incy == 1 && m*n < 2304 *GEMM_MULTITHREAD_THRESHOLD) {
GEMV_N(m, n, 0, alpha, a, lda, x, incx, y, incy, NULL);
return;
}
#endif
IDEBUG_START;

FUNCTION_PROFILE_START();


Loading…
Cancel
Save