ScaLAPACK Archives

[Scalapack] Scalapack on Linux-MPI-Cluster Error compiling tests

Hello Moritz

Hello Julie!

I've now tried the installer and my success rate was merely the same as 
before, although it's really very much easier to poke around with different 
compilers/MPI implementations and LaPACK/BLAS libraries.
Big thanks for giving me that hint about the installer!

But some questions and problems still persist:
1. In general, why do all librarys only produce statically linked files? My 
boss pointed out, that we would normally try to use dynamically linked 
librarys wherever possible. However, I am relatively new to the whole subject 
so I can't figure out for myself why you only produce static libraries. Could 
you explain to me why you do it all statically? ;)
Not sure about the historic reason but do not worry both are fine.

2. At the moment I'm only using gcc (4.1.2). (Although there is also the 
intel, pathscale, open64, sun, etc compilers ...) 
On the other hand, I've got native HP-Platform-MPI, MVAPICH and OpenMPI as 
MPI libraries and ATLAS and ACML as lapack/blas libraries.
Best is gcc because there is no tricky flag to set and his performance are 
really good.

a) [using atlas and openmpi]
Mileage is totally varying there... It seems that our ATLAS libraries are 
simply not useable, the installer complains about bot BLAS and LAPACK (see 
error messages #1 and #2 below).
When I use --downblas and --downlapack compiling scalapack with tests does 
work, so my conclusion was that (our) atlas library is somehow wrong.
no ATLAS cannot be the LAPACK library.  you just need a "real" LAPACK, ATLAS is 
only an implementation of BLAS with only a subset of LAPACK inside.

b) [using acml and the native mpi]
In this case I can at least use the BLAS library that acml provides, but 
their lapack implementation seems to miss something again, too. Again, when 
compiling with --downlapack or --notesting, all installing is going well.

So it seems as I am able to compile the scalapack library in all cases, but 
there's always problems with the test cases.
And I think that the whole thing can't be totally sane, if I can't compile 
and run these tests. Agreeable, isn't it?
Same you really want the -downlapack to make sure you get the latest netlib 

3. I had to edit the python scripts at some places, where programs using mpi 
have to be run in order to test blacs, for example. Our environment uses an 
'mpirun -np 2 -hostlist "host..." ./program' syntax to deploy programs that 
use mpi! As an enhancement you could add that as an option to the 
scalapack-installer ;)
I believe you can set a file somewhere to declare your hosts.

Kind of complicating, I know! But if you could tell me about combinations of 
libraries that you know to be working, that would already be some help for me!

So in summary, gnu compilers / any mpi / netlib lapack [--downlapack] / and 
your favorite BLAS ACML seems fine so go for it]
For ATLAS you should be able to use it, maybe you need a newer version or you 
need to recompile clue here

Good luck

Thank you for your time and patience

Attached Error messages:

#1: using gcc, atlas and openmpi

BLAS: provided BLAS cannot be used! aborting...
error is:
/tmp/ccWx1NUq.o: In function `MAIN__':
tmpf.f:(.text+0x4b): undefined reference to `dscal_'
collect2: ld returned 1 exit status


#2: using gcc, atlas, openmpi and --downblas

LAPACK: provided LAPACK cannot be used! aborting...
error is:
In function `atl_f77wrap_dgetrf_':
ATL_f77wrap_getrf.c:(.text+0xde): undefined reference to `ATL_xerbla'
/usr/local/cluster/atlas/current_gcc/lib/liblapack.a(ATL_dgetrfC.o): In 
function `ATL_dgetrfC':
ATL_getrfC.c:(.text+0x112): undefined reference to `cblas_dtrsm'
ATL_getrfC.c:(.text+0x172): undefined reference to `cblas_dgemm'
ATL_getrfC.c:(.text+0x29e): undefined reference to `cblas_idamax'
ATL_getrfC.c:(.text+0x365): undefined reference to `cblas_idamax'
ATL_getrfC.c:(.text+0x3b2): undefined reference to `cblas_dscal'
ATL_getrfC.c:(.text+0x46c): undefined reference to `cblas_dtrsm'
ATL_getrfC.c:(.text+0x4b7): undefined reference to `cblas_idamax'
ATL_getrfC.c:(.text+0x54d): undefined reference to `cblas_dscal'
ATL_getrfC.c:(.text+0x5a7): undefined reference to `cblas_dscal'
/usr/local/cluster/atlas/current_gcc/lib/liblapack.a(ATL_dgetrfR.o): In 
function `ATL_dgetrfR':
ATL_getrfR.c:(.text+0xee): undefined reference to `cblas_dtrsm'
ATL_getrfR.c:(.text+0x14a): undefined reference to `cblas_dgemm'
ATL_getrfR.c:(.text+0x21c): undefined reference to `cblas_idamax'
ATL_getrfR.c:(.text+0x26b): undefined reference to `cblas_dscal'
collect2: ld returned 1 exit status


From: julie langou [mailto:julie@Domain.Removed] 
Sent: Friday, January 14, 2011 5:29 PM
To: Schlarb, Moritz
Cc: 'scalapack@Domain.Removed'
Subject: Re: [Scalapack] Scalapack on Linux-MPI-Cluster Error compiling tests

Hi Moritz,
Did you try to use the scalapack installer?
It is available at
Let me know if this solves your problem.

Julie Langou; Research Associate in Computer Science
Innovative Computing Laboratory;
University of Tennessee from Denver, Colorado ;-)

-------------- next part --------------
An HTML attachment was scrubbed...

<Prev in Thread] Current Thread [Next in Thread>

For additional information you may use the LAPACK/ScaLAPACK Forum.
Or one of the mailing lists, or