Cilk Plus patch for gcc 4.7

Cilk Plus patch for gcc 4.7

Portrait de Brandon Hewitt (Intel)

All,

There's now an open source implementation of Intel Cilk Plus based on gcc 4.7.

Information on how to contribute is at:

http://software.intel.com/en-us/articles/contribute-to-intel-cilk-plus/

Source is at:

http://software.intel.com/en-us/articles/download-intel-cilk-plus-source/

Brandon Hewitt Technical Consulting Engineer Tools Knowledge Base: "http://software.intel.com/en-us/articles/tools" Software Product Support info: "http://www.intel.com/software/support"
10 posts / 0 nouveau(x)
Dernière contribution
Reportez-vous à notre Notice d'optimisation pour plus d'informations sur les choix et l'optimisation des performances dans les produits logiciels Intel.
Portrait de philouphilou.ch

Thanks Intel, good move!
I've tried compiling gcc cilkplus 4.7 latest SVN on MacOSX, both 10.6 and 10.7, it fails, MacOSX supporting only weak object references in it's Mach-O files it seems.
On debian Linux 6.0 it went fine, when *NOT* trying to compile against libppl and libcloog, to take advantage of graphite loop optimizations. otherwise (trying to have graphite activated), after bootstrap phase, a configure script die because xgcc does not recognize the capital V option (-V). Regards. Philippe, Lausanne, Switzerland.

Portrait de philouphilou.ch

Oops a bug, when using -O or -O2 switch, the following code : -- 8< -- #include #include int fib (int n) { if (n<2) return n; else { int x, y; x = cilk_spawn fib (n-1); y = cilk_spawn fib (n-2); cilk_sync; return (x+y); } } int main (int argc, char *argv[]) { int n, result; n = atoi(argv[1]); result = cilk_spawn fib(n); cilk_sync; printf ("Result: %d\n", result); return 0; } -- 8< -- /opt/cilkplus/bin/gcc -pthread -O -o fib fib-cilk.c -lcilkrts gives: fib-cilk.c: In function main: fib-cilk.c:27:1: error: definition in block 4 does not dominate use in block 3 for SSA_NAME: n_21(ab) in statement: n_6(ab) = PHI PHI argument n_21(ab) for PHI node n_6(ab) = PHI fib-cilk.c:27:1: internal compiler error: verify_ssa failed Please submit a full bug report, with preprocessed source if appropriate. See for instructions. without -O or -O2 it build fine.

Portrait de Kittur Ganesh (Intel)

Hi,

Thanks for the above(fib) bug, which is under investigation. Also, the first release was for Linux, but the Intel Cilk Plus Support for Mac OS* X is forthcoming soon. I'll keep you updated as soon as it becomes available.

-regards,
Kittur

Portrait de Balaji Iyer (Intel)

Hello Philippe,
Thank you very much for your post. Can we use the example code you posted aboveas part of the cilk-plus test suite in GCC?

Thanks,

Balaji V. Iyer.

Portrait de philouphilou.ch

I guess so, it comes out of the old MIT cilk 5.4.6 project documentation,http://supertech.csail.mit.edu/cilk/, licensed GPL, but about licensing of an example in the documentation ?? I dunno.

Portrait de Balaji Iyer (Intel)

Hello Philippe,
We have send a new patch to the gcc-patches mailing list that should fix this problem. Please let me know otherwise.

Thanks,

Balaji V. Iyer.

Portrait de philouphilou.ch

Hello Balaji, with this second patch, which you seem to have pushed on SVN some hours ago, the build on latest linux debian dies in libcilkrts, while configuring it, with the following errors in config.log: g++: error: unrecognized command line option '-funconfigured-libstdc++-v3' the same error with or without graphite loop optim enable in the gcc build (ppl, cloog). I don't know enough of gcc internals to be of any more help there. I've emailed cilk@intel.com with the full report. Regard.

Portrait de Balaji Iyer (Intel)

Hi Phillipe,

We were able to get it successfully built and installed in Ubuntu. We will try to reproduce the problem and get back to you. In the meantime, can you please tell me yourOS version (along with32 or 64 bit), and the versions of the following tools;

1) flex

2) bison

4) texinfo

6) GCC

7) autogen

8) gmake

9) automake

Thanks,

Balaji V. Iyer.

Portrait de philouphilou.ch
This is a debian stable, aka "squeeze" 6.0 box, x86_64/amd64 philou@lenix:~$ gcc -v Using built-in specs. Target: x86_64-linux-gnu Configured with: ../src/configure -v --with-pkgversion='Debian 4.4.5-8' --with-bugurl=file:///usr/share/doc/gcc-4.4/README.Bugs --enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.4 --enable-shared --enable-multiarch --enable-linker-build-id --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.4 --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-objc-gc --with-arch-32=i586 --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu Thread model: posix gcc version 4.4.5 (Debian 4.4.5-8) flex: 2.5.35-10 bison: 1:2.4.1.dfsg-3 texinfo: 4.13a.dfsg.1-6 gcc: 4.4.5-8 make: 3.81-8 automake: 1:1.11.1-1 autoconf: 2.67-2 libtool: 2.2.6b-2 autotools-dev (incl. autogen.sh) : 20100122.1
regards.

Connectez-vous pour laisser un commentaire.