Hacker News new | ask | show | jobs
by srean 5177 days ago
For those who are building gcc-4.7 from scratch, the cilk/ branch sure looks interesting. It has the Cilk runtime and the cilk extensions to the language built in.

http://en.wikipedia.org/wiki/Cilk http://software.intel.com/en-us/articles/intel-cilk-plus/

As far as language extensions go, it may seem that Cilk does not add much, but to me the advantage of not manually assigning tasks to threads and work stealing seems like a big win.

Looking forward to try it out in a week. Stoked.

1 comments

Well, C++11 has native threads now and OpenMP looks like a good alternative to Cilk.

Any performance reason for which one would prefer Cilk vs OpenMP ?

Not to be facetious but, one is C the other is C++ and on occaisons it does matter a lot.

OpenMP is good for Fortran style code, where you decorate loops, although I havent looked at the latest OpenMP standards. But on its own C++11 looks very good. I will (and I do) use it where I have uses of C++ template mechanism. But now I am porting some that stuff to D. Generics is so much less verbose and nicer over all.

Though I love the support for type inference in C++11, it does not play well with expression templates, which is my go to reason to turn to C++ in the first place (perhaps the only one prior to C++11).

I know there is a big difference between modern C++11 and C.

C11 has standard threads similarly with what you find in C++11, unfortunately you won't find this implemented by all vendors. I hope to see complete support for C11 threads in GCC and Clang in the near future.