Part III: Working with Packages

 < Day Day Up > 

12.12. Numerical Libraries

Tiger ships with an impressive array of resources used for numerical computing. In addition to support for 64-bit computing, including 64-bit pointers for passing large arrays, and the optimized and extended mathematical libraries, libm and libmx, many numerical libraries are packaged within the Accelerate umbrella framework. The Accelerate umbrella framework includes libraries shipped with Mac OS X that have been optimized for high performance computing, including a several subframeworks, listed below. The Accelerate framework is located in /System/Library/Frameworks/Accelerate.framework, and its libraries have been optimized to take advantage of the G5 and the Velocity engine.


vecLib

Subframework of the Accelerate framework. Includes BLAS, LAPACK, vDSP, vMathLib, vBasicOps, vBigNum, and vForce. It is located in /System/Library/Frameworks/vecLib.framework (see http://developer.apple.com/hardware/ve).


BLAS

Complete and optimized set (levels 1, 2, and 3) of the basic linear algebra subprograms. (See http://www.netlib.org/blas/faq.html.)


LAPACK

Linear algebra package, written on top of the BLAS library. (See http://www.netlib.org/lapack/index.html.) Lapack is designed to run efficiently having most of the actual computations performed by optimized BLAS routines.


vDSP

Digital signal processing. (See http://developer.apple.com/hardware/ve/downloads/vDSP.sit.hqx.)


vBasicOps

A set of basic arithmetic operations. (See /System/Library/Frameworks/vecLib.framework/Versions/Current/Headers/vBasicOps.h.)


vBigNum

A set of basic arithmetic operations on large (128-bit) integers. (See /System/Library/Frameworks/vecLib.framework/Versions/Current/Headers/vBigNum.h.)


vMathLib

A set of basic vectorized transcendental functions, optimized for the Velocity engine. (See http://developer.apple.com/hardware/ve.)


vForce

A set of highly optimized elementary functions on many operands. (See /System/Library/Frameworks/vecLib.framework/Versions/Current/Headers/vForce.h.)


vImage

Subframework of the Accelerate framework. A set of highly optimized image processing filters. (See /System/Library/Frameworks/vImage.framework/Versions/Current/Headers/vImage.h.)

To compile code using a subframework of Accelerate you must include the header file with the following line of code.

     #include <Accelerate/Accelerate.h> 

For example, you can compile a program named prog.c, which makes use of the vecLib framework, as follows.

     $ gcc -faltivec -framework Accelerate prog.c 

     < Day Day Up > 


    Mac OS X Tiger for Unix Geeks
    Mac OS X Tiger for Unix Geeks
    ISBN: 0596009127
    EAN: 2147483647
    Year: 2006
    Pages: 176

    Similar book on Amazon

    flylib.com © 2008-2017.
    If you may any questions please contact us: flylib@qtcs.net