Dear Paul Anton, 

thanks a lot for your suggestion. I was also successful with

[blas]
libraries = blas
library_dirs = $PREFIX/gotoblas2/lib
[lapack]
libraries = lapack
library_dirs = $PREFIX/gotoblas2/lib

but I had compile clapack as a shared library and place a symbolic link
ln -s $PREFIX/gotoblas2/lib/libgoto2.so $PREFIX/gotoblas2/lib/libblas.so

I think your solution works better (the only difference is that I had to define LAPACK variable before installing numpy to avoid that warning about an optimized lapack lib missing), but what about source dirs? do you also set BLAS_SRC and LAPACK_SRC? how?

cheers



On Tue, Mar 22, 2011 at 11:18 PM, Paul Anton Letnes <paul.anton.letnes@gmail.com> wrote:
I'm no expert, but I just pulled off the scipy+numpy+GotoBLAS2 installation. From what I gather, the Makefile for libgoto2 downloads and compiles the generic lapack from netlib. It also wraps lapack into libgoto2.so/.a. I believe the idea is as long as the BLAS implementation is fast(TM), the lapack performance will be good.

To wit*, what I did was to tell numpy where libgoto2 was:
env BLAS=/path/to/libgoto2.so python setup.py install
Scipy also wants the path to lapack, which is wrapped inside libgoto2:
env BLAS=/path/to/libgoto2.so LAPACK=/path/to/libgoto2.so python setup.py install
Afterwards, I added the path to LD_LIBRARY_PATH. This was on a linux cluster, if that matters. At any rate, I can testify that it was not a big job to get numpy and scipy working with goto blas.

Good luck,
Paul.

*) I have notes on this on a different computer, but not available right now.


On Tue, Mar 22, 2011 at 10:13 AM, Giuseppe Aprea <giuseppe.aprea@gmail.com> wrote:
Hi all,

I wonder if Peter finally got Gotoblas working with numpy. I am trying with gotoblas 1.13 installed in the same way:

$ ls -R
.:
include  lib

./include:
goto

./include/goto:
blaswrap.h  cblas.h  clapack.h  f2c.h

./lib:
libgoto2.a  libgoto2_nehalemp-r1.13.a  libgoto2_nehalemp-r1.13.so  libgoto2.so

and numpy 1.5.1 with this site.cfg

[DEFAULT]
library_dirs = /usr/local/gcc/4.5.2/gcc/lib64:/usr/local/gcc/4.5.2/gcc/lib:/usr/local/gcc/4.5.2/gcc/lib32:/usr/local/gcc/4.5.2/gotoblas2/1.13/lib:/usr/local/gcc/4.5.2/suiteSparse/3.6.0/lib:/usr/local/gcc/4.5.2/fftw/3.2.2/lib
include_dirs = /usr/local/gcc/4.5.2/gcc/include:/usr/local/gcc/4.5.2/gotoblas2/1.13/include/goto:/usr/local/gcc/4.5.2/suiteSparse/3.6.0/include:/usr/local/gcc/4.5.2/fftw/3.2.2/include
search_static_first = 1
[blas_opt]
libraries = goto2
language = fortran
[lapack_opt]
libraries = goto2
language = fortran
[amd]
amd_libs = amd
[umfpack]
umfpack_libs = umfpack
[fftw]
libraries = fftw3

(I also tried without "_opt" and "language = fortran"); I used goto2 for lapack because I read lapack should be included in libgoto (anyway things do not change using "lapack"). I am quite sure the system is not using my goto-lapack stuff since every time I buid i get:

building extension "numpy.numarray._capi" sources
building extension "numpy.fft.fftpack_lite" sources
building extension "numpy.linalg.lapack_lite" sources
creating build/src.linux-x86_64-2.7/numpy/linalg
### Warning:  Using unoptimized lapack ###
  adding 'numpy/linalg/lapack_litemodule.c' to sources.
  adding 'numpy/linalg/python_xerbla.c' to sources.
  adding 'numpy/linalg/zlapack_lite.c' to sources.
  adding 'numpy/linalg/dlapack_lite.c' to sources.
  adding 'numpy/linalg/blas_lite.c' to sources.
  adding 'numpy/linalg/dlamch.c' to sources.
  adding 'numpy/linalg/f2c_lite.c' to sources.
building extension "numpy.random.mtrand" sources
creating build/src.linux-x86_64-2.7/numpy/random
C compiler: /usr/local/gcc/4.5.2//gcc/bin/gcc -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -O1 -pthread -fPIC -march=native -mtune=native -I/usr/local/gcc/4.5.2//gcc/include -I/usr/local/gcc/4.5.2//suiteSparse/3.6.0/include -I/usr/local/gcc/4.5.2//fftw/3.2.2/include -fPIC

during numpy installation (which ends successfully). Moreover I cannot see any -lgoto2 as I would have expected. 
Incidentally, I cannot see -lamd, -lumfpack, -lfftw3 (or any reference to amd, umfpack, fftw3) neither, although there seems to be something to handle them in system_info.py. The failure is so complete that I must have done some big mistake but I can't correct my site.cfg even after searching the internet. This seems to be one of the major discussion about this topic so I am asking here for some help, please.
Is the problem related with site.cfg or with gotoblas2 installation? Is it true that gotoblas2 hosts a full lapack inside?

thank you very much!

giuseppe

_______________________________________________
NumPy-Discussion mailing list
NumPy-Discussion@scipy.org
http://mail.scipy.org/mailman/listinfo/numpy-discussion



_______________________________________________
NumPy-Discussion mailing list
NumPy-Discussion@scipy.org
http://mail.scipy.org/mailman/listinfo/numpy-discussion