LAPACK and ATLAS

Open discussion regarding features, bugs, issues, vendors, etc.

LAPACK and ATLAS

Postby mmiranda » Tue Feb 20, 2007 8:26 pm

I am in the process of installing LAPACK on an Intel Pentium 4 running on Linux/Ubuntu 6.06. I wanted to use an optimized BLAS so downloaded the compiled ATLAS3.6.0 libraries from the ATLAS website for my configuration (i.e. atlas3.6.0_Linux_P4SSE2). Here's the link I used:

https://sourceforge.net/project/showfil ... p_id=23725

I then compiled and tried to run the BLAS Test Programs from the LAPACK3.1.0 suite, but for some reason the Level 1 BLAS doesn't work for complex ("c"). Everything else works fine but apparently the cblat1.f testing program is giving a "segmentation fault" message. I don't know if the problem is with the atlas library or with the testing program.

This is my make.inc file:

####################################################################
# LAPACK make include file. #
# LAPACK, Version 3.0 #
# June 30, 1999 #
####################################################################
#
# See the INSTALL/ directory for more examples.
#
SHELL = /bin/sh
#
# The machine (platform) identifier to append to the library names
#
PLAT = _LINUX
#
# Modify the FORTRAN and OPTS definitions to refer to the
# compiler and desired compiler options for your machine. NOOPT
# refers to the compiler options desired when NO OPTIMIZATION is
# selected. Define LOADER and LOADOPTS to refer to the loader and
# desired load options for your machine.
#
FORTRAN = gfortran
OPTS = -funroll-all-loops -O3
DRVOPTS = $(OPTS)
NOOPT =
LOADER = gfortran
LOADOPTS =
#
# The archiver and the flag(s) to use when building archive (library)
# If you system has no ranlib, set RANLIB = echo.
#
ARCH = ar
ARCHFLAGS= cr
RANLIB = ranlib
#
# The location of the libraries to which you will link. (The
# machine-specific, optimized BLAS library should be used whenever
# possible.)
#
# modified by MJM
#BLASLIB = ../../blas$(PLAT).a
BLASLIB = -L/home/mmiranda/ATLAS3.6.0/Linux_P4SSE2/lib/ \
-lf77blas -latlas
LAPACKLIB = lapack$(PLAT).a
TMGLIB = tmglib$(PLAT).a
EIGSRCLIB = eigsrc$(PLAT).a
LINSRCLIB = linsrc$(PLAT).a

As you can see I am using gfortran/gcc 4.0.3. Could it be that there is a compatibility problem with the compiler since atlas was compiled using g77? Any help will be appreciated since I am a novice in these things!

I went ahead and built Lapack library by linking it to the atlas libraries and, again, the tests were ok with the exception of the complex-type tests (i.e. the c*.out files) which couldn't even run.

thanks for your help.
mmiranda
 
Posts: 4
Joined: Tue Feb 20, 2007 8:06 pm

Postby Julien Langou » Tue Feb 20, 2007 9:38 pm

Hello,

I have reproduced your problem on Intel Xeon. If I use ATLAS
(3.6.0) compiled with g77 (3.3.5) and the LAPACK (3.1.0) BLAS tester compiled with
gfortran (4.0.3), then the executable xblat1c meant to test the Level-1 subroutines
SegFaults. This is on Pentium as well. The LAPACK (3.0) BLAS tester has the same
behavior. (SegFault of ./xblat1c.)

For information, if I compile the LAPACK BLAS tester with g77, then the problem is removed.

If anyone wants to investigate further, he is welcome. A good idea might be to check
that ATLAS with gfortran and LAPACK BLAS tester with gfortran works fine together.

Julien.
Julien Langou
 
Posts: 835
Joined: Thu Dec 09, 2004 12:32 pm
Location: Denver, CO, USA

Postby mmiranda » Wed Feb 21, 2007 10:47 am

Thanks for your quick reply Julien!

Maybe I should try to build Lapack with g77 instead of gfortran. For my purposes I don't really need the complex routines but it really sucks that I can't build the whole library.

Thanks again for your help,

Manuel
mmiranda
 
Posts: 4
Joined: Tue Feb 20, 2007 8:06 pm


Return to User Discussion

Who is online

Users browsing this forum: No registered users and 9 guests