* [[http://www.cse.iitb.ac.in/grc/gcc-workshop-10/sources/slides/gccw10-par-vect.pdf|Parallelization and Vectorization in GCC 4.5.0]] ====== 建置 Graphite ====== 請見 [[http://gcc.gnu.org/install/prerequisites.html|Prerequisites for GCC]] 中底下兩項描述: * Parma Polyhedra Library (PPL) version 0.11 * CLooG-PPL version 0.15 or CLooG 0.16 ===== GCC 4.5 ===== - 安裝 PPL $ wget http://www.cs.unipr.it/ppl/Download/ftp/releases/0.11.2/ppl-0.11.2.tar.gz $ tar xvf ppl-0.11.2.tar.gz $ mkdir build install; cd build $ ../ppl-0.11.2/configure --prefix=$INSTALL $ make; make test; make install - 安裝 CLooG $ wget http://www.bastoul.net/cloog/pages/download/count.php3?url=./cloog-parma-0.16.1.tar.gz $ tar xvf cloog-parma-0.16.1.tar.gz $ mkdir install build; cd build $ ../cloog-parma-0.16.1/configure --prefix=$INSTALL --with-ppl-prefix=$INSTALL $ make; make check; make install - 安裝 GCC $ wget ftp://ftp.gnu.org/gnu/gcc/gcc-4.5.3/gcc-4.5.3.tar.gz; tar xvf gcc-4.5.3.tar.gz $ mkdir build install; cd build $ ../gcc-4.5.3/configure --prefix=$INSTALL \ --with-ppl=/tmp/chenwj/install/ \ --with-cloog=/tmp/chenwj/install/ \ --enable-languages=c,c++ ===== GCC 4.6 ===== - 安裝 PPL $ wget http://www.cs.unipr.it/ppl/Download/ftp/releases/0.11.2/ppl-0.11.2.tar.gz $ tar xvf ppl-0.11.2.tar.gz $ mkdir build install; cd build $ ../ppl-0.11.2/configure --prefix=$INSTALL $ make; make test; make install - 安裝 CLooG $ wget http://www.bastoul.net/cloog/pages/download/count.php3?url=./cloog-0.16.2.tar.gz $ tar xvf cloog-0.16.2.tar.gz $ mkdir install build; cd build $ ../cloog-0.16.2/configure --prefix=$INSTALL $ make; make check; make install - 安裝 GCC $ wget ftp://ftp.gnu.org/gnu/gcc/gcc-4.6.0/gcc-4.6.0.tar.gz; tar xvf gcc-4.6.0.tar.gz $ ../gcc-4.6.0/configure --prefix=$INSTALL \ # CLooG 後端有 PPL、PolyLib 和 isl。這裡選用 isl。 --enable-cloog-backend=isl \ --with-ppl=/tmp/chenwj/install/ \ --with-cloog=/tmp/chenwj/install/ \ --enable-languages=c,c++ ====== Q & A ====== - ''configure: error: cannot compute suffix of object files: cannot compile'' \\ 請見 [[http://gcc.gnu.org/ml/gcc-help/2011-06/msg00268.html|Problem while building GCC 4.6.0 with Graphite enabled]] 和 [[http://gcc.gnu.org/wiki/FAQ#configure_suffix|Configuration fails with ''configure: error: cannot compute suffix of object files: cannot compile''. What is the problem?]]。 18:35 < iant> probably you built gmp/mpfr/mpc yourself but did not use --disable-shared when building them ====== 外部連結 ====== * [[http://gcc.gnu.org/wiki/Graphite|Graphite: Gimple Represented as Polyhedra]] * [[http://www.grosser.es/publications/grosser-2010--Graphite-two-years-after--GROW-slides.pdf|GRAPHITE Two Years After]] * [[http://openwall.info/wiki/internal/gcc-local-build#How-to-build-GCC-with-the-Graphite-loop-optimizations|How to create a user-local build of recent GCC]]