Skip to content
This repository

OpenBLAS issues with PathScale ENZO 2012 #168

Closed
cbergstrom opened this Issue · 7 comments

3 participants

cbergstrom Zhang Xianyi zchothia
cbergstrom

Using PathScale ENZO 2012 I get the following failure below. Is this a known issue?

wget http://c591116.r16.cf2.rackcdn.com/enzo/nightly/Linux/enzo-2012-12-12-installer.run

ping me for a license

make BINARY=64 CC=/opt/enzo-12-12/bin/pathcc FC=/opt/enzo-12-12/bin/pathf95 AR=ar

make[1]: Entering directory /usr/local/src/OpenBLAS/exports'
perl ./gensymbol linux x86_64 _ 0 0 0 0 > linux.def
perl ./gensymbol linktest x86_64 _ 0 0 0 0 > linktest.c
/opt/enzo-12-12/bin/pathcc -O2 -m64 -DF_INTERFACE_PATHSCALE -fPIC -DSMP_SERVER -DMAX_CPU_NUMBER=16 -DASMNAME= -DASMFNAME=_ -DNAME=_ -DCNAME= -DCHAR_NAME=\"_\" -DCHAR_CNAME=\"\" -I.. -shared -o ../libopenblas_nehalemp-r0.2.5.so \
-Wl,--whole-archive ../libopenblas_nehalemp-r0.2.5.a -Wl,--no-whole-archive \
-Wl,--retain-symbols-file=linux.def -Wl,-soname,libopenblas.so.0 -lm -lpthread -lm -lpthread
../libopenblas_nehalemp-r0.2.5.a(slamc3.o): In function
slamc3_':
/usr/local/src/OpenBLAS/driver/others/lamc3.c:48: multiple definition of slamc3_'
../libopenblas_nehalemp-r0.2.5.a(slamch.o):/usr/local/src/OpenBLAS/lapack-3.4.2/INSTALL/slamch.f:171: first defined here
../libopenblas_nehalemp-r0.2.5.a(dlamc3.o): In function
dlamc3_':
/usr/local/src/OpenBLAS/driver/others/lamc3.c:48: multiple definition of `dlamc3_'
../libopenblas_nehalemp-r0.2.5.a(dlamch.o):/usr/local/src/OpenBLAS/lapack-3.4.2/INSTALL/dlamch.f:168: first defined here

zchothia
Collaborator

Hello @cbergstrom,

I just tried the latest EKOPath trial (2011-12-04, 4.0.12.1) and that builds cleanly without the link errors you posted. The build command looks good so this might be specific to the ENZO toolchain.

Could you please send me a license? I have updated my system details on pathscale.com (username: zaheer.chothia, email: zaheer.chothia@gmail.com).

--Zaheer

cbergstrom

btw - I tested on 6-Core AMD Opteron(tm) Processor 23 (D0) and it built cleanly. The failure may be limited to Intel under hyperviser on Amazon ec2

zchothia
Collaborator

Everything works fine with ENZO too. I recall having this issue a while back so I played around a little bit and fortunately I was able to reproduce it. The link error occurs when GNU patch is missing or if our patch fails to apply. I will add a note about this to the wiki.

Background: OpenBLAS implements optimized versions of some LAPACK functions, so we need to disable the reference versions so there aren't duplicate implementations of the same function.

cbergstrom

Sorry, but I don't understand under what circumstances the GNU patch is missing or if our patch fails to apply. Is this fixed or what's needed? (Random failure?.. etc..)

zchothia
Collaborator

My reply was a little vague. This is caused simply due to a missing development tool and can be easily remedied by installing it. For example on an Ubuntu/Debian system:

sudo apt-get install patch

After that re-build OpenBLAS and the error should be resolved.

cbergstrom

If patch is a default requirement you should check for it in PATH and fail or at the very least give a warning for the user to install.

It would also be great if OpenBLAS didn't "magically" do things like download software, patch.. etc There should be documented ways to prevent this.

Zhang Xianyi
Owner

Hi @cbergstrom ,

Thank you for the suggestion.
You can set NO_LAPACK=1 to prevent downloading LAPACK package and using patch.

Xianyi

Zhang Xianyi xianyi closed this
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.