Hi Daniel,Relative to OpenMP:1. Cilk++ has nested parallelism that works and provides guaranteed speed-up. OpenMP has nested parallelism, but it is a memory hog and not reliable.2. Cilk++ guarantees space bounds. On P processors, Cilk++ uses no more than P times the space of a serial execution. In OpenMP, not so.3. Cilk++ has a race detector for debugging and software release. With OpenMP, you are on your own.4. Cilk++ has serial semantics. With OpenMP, you do not have this benefit only a subset of OpenMP supports serial semantics.5. Cilk++ has a solution for global variables (a construct we invented called hyperobjects). OpenMP does not.regarding couple of the other questions:- Cilk++ is targeted towards shared memory systems- Cilk++ supports both loops and recursionMore details are available here:
http://www.cilk.com/multicore-products/ ... -overview/ Rather than a white paper on our product specifically, we put together an e-Book on the challenges of going multicore:
http://www.cilk.com/multicore-e-book/if this sounds relevant, we invite you to kick the tires on the product through the Early Visibility Program.cheers,ilya