Lisp HUG Maillist Archive

BLAS & LAPACK interface

Hi,

There was some discussion  regarding linear algebra packages a while  
back on this list.  For anyone interested in a hardware-specific  
solution, I've written an interface to the native BLAS and LAPACK  
libraries on OS X.  It uses FLI calls to the optimized AltiVec C  
implementations.

As for performance, solving a system of 1000 equations takes 800 ms  
on my 1.5GHz PowerPC.  I believe this is faster than anything you can  
get from Matlisp or Femlisp on LispWorks, though I haven't tested  
this myself.  Performing 1 million SAXPY operations takes 1600 ms.   
The same test in pure C took 90 ms, giving a (rough) estimated FLI  
overhead cost of 0.0015 ms per call.

The code currently implements all the single-float operations for  
BLAS levels 1, 2, & 3.  It has only a couple LAPACK functions  
specified, but this could easily be extended to the rest of LAPACK.   
I also added a rudimentary matrix class to simplify some foreign  
pointer creation & management.

If anyone's interested, email me for a copy (it obviously requires LWM).

-Chris

______________________________________________________________________
This email has been scanned by the MessageLabs Email Security System.
For more information please visit http://www.messagelabs.com/email 
______________________________________________________________________


Updated at: 2020-12-10 08:47 UTC