[vsipl++] [patch] Quickstart Guide update for FFT and LAPACK options

Jules Bergmann jules at codesourcery.com
Thu May 11 01:46:18 UTC 2006


Don,



Don McCoy wrote:
> The attached patch needs verifying yet, but I was having some trouble 
> building the docs.  Thought it would be good to put this up and make 
> sure it was technically correct in the meantime.
> 
> Don
> 
> 
> 
> ------------------------------------------------------------------------
> 
> 2006-05-10  Don McCoy  <don at codesourcery.com>
> 
> 	* doc/quickstart/quickstart.xml: Updated options for --enable-fft= and
> 	  --with-lapack to reflect recent additions.
> 
> 
> ------------------------------------------------------------------------
> 
> 
> Index: doc/quickstart/quickstart.xml
> ===================================================================
> RCS file: /home/cvs/Repository/vpp/doc/quickstart/quickstart.xml,v
> retrieving revision 1.29
> diff -c -p -r1.29 quickstart.xml
> *** doc/quickstart/quickstart.xml	28 Apr 2006 23:25:43 -0000	1.29
> --- doc/quickstart/quickstart.xml	10 May 2006 21:00:24 -0000
> ***************
> *** 742,759 ****
>        </varlistentry>
>   
>        <varlistentry>
> !       <term><option>--with-fft=<replaceable>lib</replaceable></option></term>
>         <listitem>
>          <para>
>           Search for and use the FFT library indicated by
>           <replaceable>lib</replaceable> to perform FFTs.  Valid
> ! 	choices for <replaceable>lib</replaceable> include
> ! 	<option>fftw3</option>, <option>ipp</option>, and
> !         <option>sal</option>, which select the FFTW3, IPP, and SAL
> !         libraries respectively.  If no FFT library is to be used
> !         (disabling Sourcery VSIPL++'s FFT functionality),
> !         <option>none</option> should be chosen for
> !         <replaceable>lib</replaceable>.
>          </para>
>         </listitem>
>        </varlistentry>
> --- 742,764 ----
>        </varlistentry>
>   
>        <varlistentry>
> !       <term><option>--enable-fft=<replaceable>lib</replaceable></option></term>
>         <listitem>
>          <para>
>           Search for and use the FFT library indicated by
>           <replaceable>lib</replaceable> to perform FFTs.  Valid
> ! 	choices for <replaceable>lib</replaceable> include 
> ! 	<option>fftw3</option>, <option>ipp</option>, and 
> !         <option>sal</option>, which select FFTW3, IPP, and SAL
> !         libraries respectively.  A fourth option, <option>builtin</option>,
> !         selects the FFTW3 library that comes with Sourcery VSIPL++ (default).
> !         This option should be used if an existing FFTW3 library is not available.
> !         If no FFT library is to be used (disabling Sourcery VSIPL++'s FFT 
> !         functionality), <option>no_fft</option> should be chosen for
> !         <replaceable>lib</replaceable>.  Advanced uses may specify 

"Advanced users ..." might scare people off :)  How about say something 
like:

"Multiple libraries may be given as a comma separated list.  When 
performing an FFT, VSIPL++ will use the first library in the list that 
can support the FFT parameters.  For example, on Mercury systems 
<option>--enable-fft=sal,builtin</option> would use SAL's FFT when 
possible, falling back to VSIPL++'s builtin FFTW3 otherwise.

> !         more than one option separated by commans.  This causes VSIPL++
                                               ^ commas
> !         to attempt to use one FFT library before falling back to 
> !         another if necessary.  Example: --enable-fft=sal,builtin
>          </para>
>         </listitem>
>        </varlistentry>
> ***************
> *** 794,807 ****
>           Search for and use the LAPACK library indicated by
>           <replaceable>lib</replaceable> to perform linear algebra
>           (matrix-vector products and solvers).  Valid choices for
> !         <replaceable>lib</replaceable> include <option>mkl</option>,
> ! 	<option>atlas</option>, <option>generic</option>, and
> ! 	<option>builtin</option>.
>          </para>
>   
>          <para>
> !         <option>mkl</option> selects the Intel Math Kernel Library (MKL)
> ! 	to perform linear algebra if found.
>          </para>
>          <para>
>           <option>atlas</option> selects the ATLAS library
> --- 799,817 ----
>           Search for and use the LAPACK library indicated by
>           <replaceable>lib</replaceable> to perform linear algebra
>           (matrix-vector products and solvers).  Valid choices for

I think we should leave the text as is.  The '--with-lapack=mkl' option 
still works.  Internally configure tries to do the right thing by 
intrepeting it as '--with-lapack="mkl7 mkl5"', searching first for MKL 
v7 or v8, then for MKL v5.

I will modify the configure.ac's builtin documentation to match the 
quickstart.

However, we should add 'acml' to the list of lapack libraries.

"<option>acml</option> selects the AMD Core Math Library (ACML) to 
perform linear algebra if found."

Also, if we document --with-mkl-prefix, we should document 
--with-acml-prefix too.

> !         <replaceable>lib</replaceable> include <option>mkl7</option>, 
> !         <option>mkl5</option>, <option>atlas</option>, 
> !         <option>generic</option>, <option>builtin</option>, and
> ! 	<option>fortran-builtin</option>.
>          </para>
>   
>          <para>
> !         <option>mkl7</option> selects the Intel Math Kernel Library (MKL)
> !         version 7.x or above to perform linear algebra if found.
> !        </para>
> !        <para>
> !         <option>mkl5</option> selects the Intel Math Kernel Library (MKL)
> !         version 5.x to perform linear algebra if found.
>          </para>
>          <para>
>           <option>atlas</option> selects the ATLAS library
> ***************
> *** 812,822 ****
>   	(-llapack) to perform linear algebra if found.
>          </para>
>          <para>
> !         <option>builtin</option> selects the builtin version of ATLAS
> !         to perform linear algebra.  This option requires building
> !         ATLAS which can take considerable time and is not supported
> !         on all platforms.  It is only recommended if MKL, ATLAS, or
> ! 	a generic LAPACK or not already installed on the platform.
>          </para>
>         </listitem>
>        </varlistentry>
> --- 822,842 ----
>   	(-llapack) to perform linear algebra if found.
>          </para>
>          <para>
> !         <option>builtin</option> selects the builtin version of 
> !         ATLAS/C-LAPACK to perform linear algebra.  This option 
> !         requires building ATLAS which can take considerable time 
> !         and is not supported on all platforms.  It is only recommended 
> !         if MKL, ATLAS, or a generic LAPACK or not already installed on 
> !         the platform.
> !        </para>
> !        <para>
> !         <option>fortran-builtin</option> selects the builtin version
> !         of ATLAS/F77-LAPACK to perform linear algebra.  Like the 
> !         <option>builtin</option>, this option requires building ATLAS
> !         as well.  In this case, it uses the FORTRAN version instead of
> !         the C version of LAPACK.  Note this option requires the g2c

Note this option requires *a fortran compiler* and the g2c library.

> !         library.  Use the <option>--with-g2c-path=</option> option if
> !         this library is not installed in a standard location.
>          </para>
>         </listitem>
>        </varlistentry>


-- 
Jules Bergmann
CodeSourcery
jules at codesourcery.com
(650) 331-3385 x705



More information about the vsipl++ mailing list