[patch] stand-alone makefile for benchmarks

Don McCoy don at codesourcery.com
Thu Mar 16 17:57:53 UTC 2006


The attached patch changes the stand-alone makefile for building 
benchmarks.  These minor changes should allow it to work correctly with 
any implementation of VSIPL++ that provides the .pc file needed for 
pkg-config.  Instructions for invoking it are included below.

Also attached is the pkg-config file needed for the building against the 
reference implementation. 


Building the full reference implementation requires three things:  the 
TASP C-VSIPL code (tvcpp0p8.tgz, available at www.vsipl.org), FFTW 2.15 
(www.fftw.org/) and the reference implementation code (in CVS as 
vsipl++).  C-VSIPL should be put into the vsipl++/ directory 
(side-by-side with the implementation/ folder that contains the ref-impl 
code) in order for pkg-config to work correctly. 

Building the reference implementation is summarized here:

    1) Build FFTW for single precision and install it somewhere.
    2) Build C-VSIPL (there is no install option)
    3) Place a symlink in the tvcpp0p8/lib/ folder to the installed fftw 
library
    4) Build the reference implementation library (named vsippp instead 
of vsip)
    5) Ensure the reference implementation folder has a sub-directory 
lib/ containing pkgconfig/vsipl++.pc.


To link the benchmarks against it, you must invoke make with a path that 
will allow it to find the correct vsipl++.pc file (i.e. the whole path 
up to, but not including, lib/).  To verify that things are installed 
correctly, type

    make -f make.standalone PREFIX=~/vsipl++/implementation vars

And it should display something like:

echo "PKG-CFG : " env 
PKG_CONFIG_PATH=/home/don/vsipl++/implementation/lib/pkgconfig 
pkg-config --define-variable=prefix=/home/don/vsipl++/implementation vsipl++
echo "CXX     : " g++
echo "CXXFLAGS: " -I/home/don/work/ref-impl 
-I/home/don/vsipl++/implementation/../tvcpp0p8/include   -O2 -DNDEBUG 
-funswitch-loops -fgcse-after-reload --param 
max-inline-insns-single=2000 --param large-function-insns=6000 --param 
large-function-growth=800 --param inline-unit-growth=300 -m64 
-mtune=nocona -mmmx -msse -msse2 -msse3
echo "LIBS    : " -L/home/don/vsipl++/implementation/vsip 
-L/home/don/vsipl++/implementation/../tvcpp0p8/lib -lvsippp -lvsip -lfftw

Use the base name of the benchmark you want to build in place of 'vars' 
above to build the desired benchmark.


Regards,

-- 
Don McCoy
don (at) CodeSourcery 
(888) 776-0262 / (650) 331-3385, x712

-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: ms.changes
URL: <http://sourcerytools.com/pipermail/vsipl++/attachments/20060316/a918b571/attachment.ksh>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: ms.diff
URL: <http://sourcerytools.com/pipermail/vsipl++/attachments/20060316/a918b571/attachment-0001.ksh>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: vsipl++.pc
URL: <http://sourcerytools.com/pipermail/vsipl++/attachments/20060316/a918b571/attachment-0002.ksh>


More information about the vsipl++ mailing list