
Intel® Cilk™ Plus is the easiest, quickest way to harness the power of both multicore and vector processing.
Intel Cilk Plus is an extension to the C and C++ languages to support data and task parallelism.
High Performance:
Easy to Learn:
Easy to Use:
So you've run your application under the Cilk screen race detector, and it's pointed to dozens of races in your code. What do you do about it?
Barry Tannenbaum has a number of suggestions about how to deal with races in Cilk code.
http://software.intel.com/en-us/articles/cilk-screen-part-ii-i-found-a-race-now-what-do-i-do
Writing parallel code exposes you to race conditions which are extremely difficult to track down using traditional serial programming tools. Barry Tannenbaum provides an introduction to the Cilk screen race detector which can find races in Cilk code. A unique feature of the Cilk screen race detector is that it will find races between any set of executed Cilk code, regardless of how it is scheduled by the Cilk runtime.
http://software.intel.com/en-us/articles/an-introduction-to-the-cilk-screen-race-detector
Come hear two Intel engineers, Bob Chesebrough and Anoop Madhusoodhanan Prabha, talk about how vectorization can be used to speed up programs on May 14th @ 9:00 AM PST. Register here.
Title: Introduction to Vectorization using Intel® C++ Compiler Cilk™ Plus Extensions
Vectorization plays a paramount role in speeding up programs with data parallelism inherent in their algorithms. Intel C++ Compiler can boost performance by detecting the potential parallelism in a loop by checking the data dependence and data flow using its auto-vectorization feature. With contemporary hardware, vector register widths continue to increase and explicit vector programming methods can be used to achieve greater performance. Intel® Cilk™ Plus allows a developer to do explicit vectorization using Intel® Cilk Plus™ SIMD directive, Array Notation and elemental functions to enable the performance potential in your application. Attend this webinar and see it in action, complete with code samples.
Check out other webinars coming up this spring.
Hello,
I'm looking for a CILK version of FFTW.
Can you help ?
Thanks,
Zvika
The following program causes a runtime crash reducer_impl.cpp:527: cilk assertion failed: h
My compiler is icc 13.1.1 on Ubuntu 12.04.
#include <cilk/reducer.h>
#include <cilk/reducer_opadd.h>
#include <cilk/cilk.h>
#include void empty() {}
std::atomic n;
int test(int *x) {
cilk::reducer_opadd r;
n = 40000;
while (n--) {
cilk_spawn empty();
}
return 0;
}
int main() {
int x = 1;
return test(&x);
}
Come hear two Intel engineers, Bob Chesebrough and Anoop Madhusoodhanan Prabha, talk about how vectorization can be used to speed up programs on May 14th @ 9:00 AM PST. Register here.
Title: Introduction to Vectorization using Intel® C++ Compiler Cilk™ Plus Extensions
Vectorization plays a paramount role in speeding up programs with data parallelism inherent in their algorithms. Intel C++ Compiler can boost performance by detecting the potential parallelism in a loop by checking the data dependence and data flow using its auto-vectorization feature. With contemporary hardware, vector register widths continue to increase and explicit vector programming methods can be used to achieve greater performance. Intel® Cilk™ Plus allows a developer to do explicit vectorization using Intel® Cilk Plus™ SIMD directive, Array Notation and elemental functions to enable the performance potential in your application. Attend this webinar and see it in action, complete with code samples.
Check out other webinars coming up this spring.
