From help-request at octave dot org Tue May 24 01:35:19 2005 Subject: Re: Greased Lightning: ATLAS From: Shai Ayal To: help at octave dot org Date: Tue, 24 May 2005 09:39:44 +0300 Hi all, I am trying to install octave-2.1.71 on fc1 with ATLAS. I am using gcc-3.3.2 . I have the ATLAS libraries in /usr/local/ATLAS/lib/Linux_P4SSE2 [shaia at mars shaia]$ ls /usr/local/ATLAS/lib/Linux_P4SSE2/ include lib libatlas.a libcblas.a libf77blas.a liblapack.a Make.Linux_P4SSE2 README SUMMARY.LOG I configure octave like this: LDFLAGS=-L/usr/local/ATLAS/lib/Linux_P4SSE2/ ./configure --enable-shared --disable-static the configure output summary I get: Octave is now configured for i686-pc-linux-gnu Source directory: . Installation prefix: /usr/local C compiler: gcc -mieee-fp -Wall -W -Wshadow -g -O2 C++ compiler: g++ -mieee-fp -Wall -W -Wshadow -g -O2 Fortran compiler: g77 -O -mieee-fp Fortran libraries: -L/usr/local/ATLAS/lib/Linux_P4SSE2/ -L/usr/lib/gcc-lib/i386-redhat-linux/3.3.2 -L/usr/lib/gcc-lib/i386-redhat-linux/3.3.2/../../.. -lfrtbegin -lg2c -lm -lgcc_s BLAS libraries: -lcblas -lf77blas -latlas FFTW libraries: -lfftw3 HDF5 libraries: MPI libraries: LIBS: -lreadline -lncurses -ldl -lm Default pager: less gnuplot: gnuplot Do internal array bounds checking: false Build static libraries: false Build shared libraries: true Dynamic Linking: true (dlopen) Include support for GNU readline: true configure: WARNING: I didn't find gperf, but it's only a problem if you need to reconstruct oct-gperf.h but, aftre compile & install, I get [shaia at mars shaia]$ ldd /usr/local/bin/octave liboctinterp.so => /usr/local/lib/octave-2.1.71/liboctinterp.so (0x00111000) liboctave.so => /usr/local/lib/octave-2.1.71/liboctave.so (0x00af5000) libcruft.so => /usr/local/lib/octave-2.1.71/libcruft.so (0x01bdd000) libfftw3.so.3 => /usr/lib/libfftw3.so.3 (0x008a6000) libreadline.so.4 => /usr/lib/libreadline.so.4 (0x0472b000) libncurses.so.5 => /usr/lib/libncurses.so.5 (0x046d8000) libdl.so.2 => /lib/libdl.so.2 (0x00932000) libg2c.so.0 => /usr/lib/libg2c.so.0 (0x00935000) libm.so.6 => /lib/tls/libm.so.6 (0x00953000) libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00975000) libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0x0097d000) libc.so.6 => /lib/tls/libc.so.6 (0x010f8000) libgpm.so.1 => /usr/lib/libgpm.so.1 (0x046d0000) /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x00adf000) There is no atlas/blas library there -- Are ther staticly linked or am I doing something wrong ? Shai Johan Kullstam wrote: > Keith Goodman writes: > > >>SSE2 >> >>I removed atlas3-base-dev but not atlas3-base (since some of my >>programs depend on it) and I kept atlas3-headers. I then installed >>atlas3-sse2 and atlas3-sse2-dev. (I'm running debian.) >> >>When I run "./configure --enable-shared --disable-static" I get "BLAS >>libraries: -lblas". So atlas is not being picked up when I use sse2 >>(but it is when I use atlas3). >> >>DOES OCTAVE KNOW? > > > Yes, for debian. Debian has some sort of indirection magic which uses > the right blas if you install, e.g., atlas3-sse2. You may also want > to install libc6-i686 which works similarly. > > Unfortunately, debian does not provide fine-grained tuned atlas/blas. > A pentiumpro is not a pentium or i486 but debian treats them the same. > Similarly, mmx covers pentium-ii, pentium-iii-katmai, > pentium-iii-copermine. 3dnow covers all flavor of athlon and sse2 > covers all the pentium-4 and pentium-M cpus. Since the best stride > size of stepping through a vector and such are detail dependent, I am > not sure if there doesn't need to be some more options. Does anyone > have any more than my wild conjecture? > > >>From your replies it sounds like I have to get configure right and get >>the LD_LIBRARY_PATH right. Does Octave itself know whether it is using >>atlas? Would it be hard to write a function that returned this sort of >>information so a user could enter, say, 'configuration' at the Octave >>prompt to find out whether or not Octave is using things like atlas? > > > Use "ldd /usr/bin/octave" at the prompt and look to see what it wants > to load. > ------------------------------------------------------------- Octave is freely available under the terms of the GNU GPL. Octave's home on the web: http://www.octave.org How to fund new projects: http://www.octave.org/funding.html Subscription information: http://www.octave.org/archive.html -------------------------------------------------------------