cilk

Grand Central Dispatch versus Cilk++

Anybody have any thoughts on Grand Central Dispatch (which has now been open-sourced by Apple) and Cilk++? Comparisons/contrasts? Is Cilk more Windows-only? ...

How to declare a vector or array of reducer objects in Cilk++?

Hi All, I had a problem when I am using Cilk++, an extension to C++ for parallel computing. I found that I can't declare a vector of reducer objects: typedef cilk::reducer_opadd<int> T_reducer; vector<T_reducer> bitmiss_vec; for (int i = 0; i < 24; ++i) { T_reducer r; bitmiss_vec.push_back(r); } However, when I compile the cod...

How to print in a thread-safe manner in C/Cilk?

I am playing around with Cilk and I am having an issue with printing synchronously. Printing is slow, so it's hard to keep the prints synchronous. For example... void ftn(int x) { if (x % 2 == 0) { std::cout << "printing.. " << x << std::endl; } else { cilk_spawn ftn(x/2); cilk_spawn ftn(x++...

Is Cilk's approach to shared memory parallel programming a panacea?

What challenges in shared memory parallel programming (particularly multicore) cannot be solved or cannot be solved efficiently using a Cilk-style solution (i.e. nested data parallelism with per-core work stealing task deques)? ...