Skip to content

Fix SGEMM returning wrong results in multithreading on NeoverseV2 - #5642

Closed
martin-frbg wants to merge 1 commit into
OpenMathLib:developfrom
martin-frbg:neov2_param
Closed

Fix SGEMM returning wrong results in multithreading on NeoverseV2#5642
martin-frbg wants to merge 1 commit into
OpenMathLib:developfrom
martin-frbg:neov2_param

Fix SGEMM returning wrong results in multithreaded operation on Neove…

c3895b5
Select commit
Loading
Failed to load commit list.
Cirrus CI / NeoverseN1-ILP64 failed Feb 11, 2026 in 31s

Task Summary

Instruction compile failed in 00:01

Details

✅ 00:28 clone
❌ 00:01 compile

      |                                          ^~
../param.h:27:54: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'INTERRUPTION'
   27 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
      |                                                      ^~~~~~~~~~~~
In file included from ../common.h:605,
                 from bf16to.c:2:
../param.h:1:6: error: expected '=', ',', ';', 'asm' or '__attribute__' before ':' token
    1 | https://github.com/numpy/numpy/issues/30816https://github.com/numpy/numpy/issues/30816https://github.com/numpy/numpy/issues/30816/*****************************************************************************
      |      ^
gemm.c: In function 'bgemm_':
../param.h:27:11: error: unknown type name 'LOSS'
   27 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
      |           ^~~~
../param.h:27:19: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'USE'
   27 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
      |                   ^~~
gemm.c:269:7: warning: unused variable 'order' [-Wunused-variable]
  269 |   int order = -1;
      |       ^~~~~
../param.h:27:42: error: unknown type name 'OR'
   27 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
      |                                          ^~
../param.h:27:54: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'INTERRUPTION'
   27 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
      |                                                      ^~~~~~~~~~~~
make[1]: *** [Makefile:1372: bgemm.o] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: *** [Makefile:2051: cblas_bgemm.o] Error 1
make[1]: *** [Makefile:844: bscal.o] Error 1
sbgemv.c: In function 'bgemv_':
sbgemv.c:203:33: error: 'GEMM_MULTITHREAD_THRESHOLD' undeclared (first use in this function)
  203 |     if ( 1L * m * n < 115200L * GEMM_MULTITHREAD_THRESHOLD )
      |                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~
sbgemv.c:203:33: note: each undeclared identifier is reported only once for each function it appears in
make[1]: *** [Makefile:852: sbf16tos.o] Error 1
make[1]: *** [Makefile:1003: bgemv.o] Error 1
make[1]: *** [Makefile:1688: cblas_sbdtobf16.o] Error 1
make[1]: *** [Makefile:848: sbstobf16.o] Error 1
make[1]: *** [Makefile:850: sbdtobf16.o] Error 1
make[1]: *** [Makefile:1690: cblas_sbf16tos.o] Error 1
make[1]: *** [Makefile:1686: cblas_sbstobf16.o] Error 1
sbgemv.c: In function 'cblas_bgemv':
sbgemv.c:203:33: error: 'GEMM_MULTITHREAD_THRESHOLD' undeclared (first use in this function)
  203 |     if ( 1L * m * n < 115200L * GEMM_MULTITHREAD_THRESHOLD )
      |                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~
sbgemv.c:203:33: note: each undeclared identifier is reported only once for each function it appears in
make[1]: *** [Makefile:1684: cblas_sbdot.o] Error 1
make[1]: *** [Makefile:846: sbdot.o] Error 1
make[1]: *** [Makefile:854: dbf16tod.o] Error 1
make[1]: *** [Makefile:1838: cblas_bgemv.o] Error 1
make[1]: *** [Makefile:1682: cblas_bscal.o] Error 1
make[1]: *** [Makefile:1692: cblas_dbf16tod.o] Error 1
make[1]: Leaving directory '/tmp/cirrus-ci-build/interface'
make: *** [Makefile:198: libs] Error 1

Exit status: 2