cancel
Showing results for 
Search instead for 
Did you mean: 

General Discussions

Zomba
Journeyman III

(potential) Bug in AMD-AOCL

Hello

I am try building Numpy 1.26.3 with AMD-AOCL binaries

My Build enviroment:

OS: Debian 12 (wsl2)

AMD-AOCL version: 4.1 (GCC compiled Debian package from https://www.amd.com/en/developer/aocl.html)  

Python version: 3.12.1 (packaged by conda-forge)

GCC version: 13.2.0 (packaged by conda-forge)

GXX version: 13.2.0 (packaged by conda-forge)

Meson version: 1.3.1 (packaged by conda-forge)

gfortran version: 13.2.0 (packaged by conda-forge)

cmake version:  3.28.2 (packaged by conda-forge)

pkgconfig version: 1.5.5 (packaged by conda-forge)

 

I amd using next .pc configs for linking AOCL libs:

flame.pc (~/miniforge3/envs/dev-blis2/share/pkgconfig/flame.pc)

libdir=/opt/AMD/aocl/aocl-linux-gcc-4.1.0/gcc/lib_ILP64
includedir=/opt/AMD/aocl/aocl-linux-gcc-4.1.0/gcc/include_ILP64
version=4.1
extralib=-lm -lstdc++
Name: flame
Description: AOCL is a set of numerical libraries optimized for AMD processors based on the AMD Zen core architecture and generations
Version: ${version}
Libs: -L${libdir} -lflame
Libs.private: ${extralib}
Cflags: -I${includedir}

blis.pc (~/miniforge3/envs/dev-blis2/share/pkgconfig/blis.pc)

libdir=/opt/AMD/aocl/aocl-linux-gcc-4.1.0/gcc/lib_ILP64
includedir=/opt/AMD/aocl/aocl-linux-gcc-4.1.0/gcc/include_ILP64
version=4.1
extralib=-lm -fopenmp
Name: blis
Description: AOCL is a set of numerical libraries optimized for AMD processors based on the AMD Zen core architecture and generations
Version: ${version}
Libs: -L${libdir} -lblis-mt
Libs.private: ${extralib}
Cflags: -I${includedir}

I am using next command for compiling Numpy:

pip install numpy --no-binary :all: -Csetup-args=-Dallow-noblas=false -Csetup-args=-Dlapack=flame -Csetup-args=-Dblas=blis -Csetup-args=-Duse-ilp64=true --no-cache-dir --force-reinstall

It's works fine, but after run numpy's tests one (from ~40000) gives incorrect result (computed rank is incorrect).

there is code for run tests:

import numpy

numpy.test('full')

https://imgur.com/a/8kGCRrr

Standard numpy with blis/lapack libs from conda-forge passed all tests successfully, so i am thinking, amd-aocl has some bug

Is it really bug, or am i messed up with something ?

0 Likes
0 Replies