Hacker News new | past | comments | ask | show | jobs | submit login
Cilk++ for Linux is available for download (multithread performance-sensitive apps) (cilk.com)
12 points by threadman on Dec 24, 2008 | hide | past | favorite | 7 comments



I remember seeing this earlier and my thoughts are still the same. This license scares me.

It tries to close a "loophole" in the GPL that I never considered a loophole. Consequently, we have a brand new license that I don't want to learn because it's mentally exhausting to be reading legal documents when I want to code. I bothered with the GPL because there was enough points of view to feel relatively confident in what was happening. I don't want to bother again.

I hope the painfulness of having yet-another-license outweighed the perceived slights from the loophole they tried to close.

I'm happy to be an early adopter of a new technology. But not a new license. No thanks.


This is not some small licensing detail; it's their entire revenue stream. Cilk++ is basically a compiler. Normally the compiler license doesn't affect your software that is compiled with the compiler, but if Cilk Arts allowed people to compile proprietary code with the free version of their compiler, there'd be no reason to pay them at all.

BTW, I think ICC has a similar provision.


do you distribute your work under GPL? If so, then you wouldn't see a change under CAPL.


GPL 2 or 3? The Cilk++ page says if it is "used by others" and not open source you need to pony up. This is perfectly acceptable by GPL2.


sorry, I'm not clear- do you mean you distribute it under GPL2, or that GPL2 allows use without releasing the resulting work?


Can someone who knows about the thing tell me how it's different from OpenMP? Their little example of accelerating a loop, at least, looks much like a standard OpenMP case.


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 stack 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 called "hyperobjects"). OpenMP does not.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: