OpenBLAS issues with PathScale ENZO 2012 #168

Closed
cbergstrom opened this Issue Dec 13, 2012 · 7 comments

Projects

None yet

3 participants

@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

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

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

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.

@xianyi
Owner

Hi @cbergstrom ,

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

Xianyi

@xianyi xianyi closed this Jan 18, 2013
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment