Questions tagged [cilk-plus]

Intel® Cilk™ Plus is an extension to C and C++ that improves the performance of programs on multicore processors.

Intel® Cilk™ Plus is an extension to C and C++ that improves the performance of programs on multicore processors. The three Intel Cilk Plus keywords provide a simple model for parallel programming, while runtime and template libraries offer an environment for building parallel applications.

Source: Intel Developer Zone

79 questions
98
votes
5 answers

libstdc++.so.6: cannot open shared object file: No such file or directory

I want to run Cilkscreen command with a cilk++ program but I'v got this error /usr/local/cilk/bin/../lib32/pinbin: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory Can you help me…
ammouna
  • 981
  • 1
  • 6
  • 4
12
votes
2 answers

Why do I get this compile error with GCC 5 and cilk-plus?

For some reason cilk_spawn does not work with x86 intrinsics. I get an error every time I try to combine the two in the body of the same function. (Note that cilk_for works fine). If I remove all of the SIMD instructions it compiles and runs…
chasep255
  • 11,745
  • 8
  • 58
  • 115
12
votes
1 answer

Multithreading in LLVM

I need to generate LLVM code that will serve a lot of threads/tasks (hundreds of thousands). These threads should be lightweight like Intel TBB's tasks, golang gorutines or other. Of course they can be implemented with external C++ libraries like…
Wojciech Danilo
  • 11,573
  • 17
  • 66
  • 132
5
votes
1 answer

A curious case in parallel programming

I have a parallel program which sometimes runs and sometimes just gives segmentation fault. The executable when forced to run with 3 threads runs fine (basically it also run with single thread which is just serial) but it gives segmentation fault…
Aman Deep Gautam
  • 8,091
  • 21
  • 74
  • 130
5
votes
2 answers

Cilk or Cilk++ or OpenMP

I'm creating a multi-threaded application in Linux. here is the scenario: Suppose I am having x instance of a class BloomFilter and I have some y GB of data(greater than memory available). I need to test membership for this y GB of data in each of…
Aman Deep Gautam
  • 8,091
  • 21
  • 74
  • 130
3
votes
1 answer

Intel TBB and Cilk Plus thread affinity on Intel MIC

I would like to write parallel code for Intel Xeon Phi using Intel TBB and Cilk Plus but i have a problem with thread affinity. I want to bind one thread to one logical core. Is is possible to set affinity like in OpenMP? I mean…
JudgeDeath
  • 151
  • 1
  • 2
  • 9
3
votes
5 answers

Intel TBB vs CilkPlus

I am developing time-demanding simulations in C++ targeting Intel x86_64 machines. After researching a little, I found two interesting libraries to enable parallelization: Intel Threading Bulding Blocks Intel Cilk Plus As stated in docs, they both…
Andry
  • 16,172
  • 27
  • 138
  • 246
3
votes
3 answers

Why does this code lead to deadlock?

I am surprised to see from pstack that this code leads to deadlock! I don't see a reason for the same. pthread_mutex_t lock; _Cilk_for (int i = 0; i < N; ++i) { int ai = A[i]; if (ai < pivot) { pthread_mutex_lock(&lock); A[ia++] = ai; …
Lazer
  • 90,700
  • 113
  • 281
  • 364
2
votes
2 answers

How can I install intel Cilk for C/C++ parallel programming on windows 10?

I would like to experiment with intel's Cilk extension for C/C++ parallel programming but I am having a hard time figuring out how to install it on Windows. I tried consulting the official site but I couldn't find any Windows oriented guide.…
Vector Sigma
  • 194
  • 1
  • 4
  • 16
2
votes
2 answers

Cilk Plus code result depends on number of workers

I have a small piece of code that I would like to parallelize as I upscale. I've been using cilk_for from Cilk Plus to run the multithreading. The trouble is that I get a different result depending on the number of workers. I've read that this might…
Stershic
  • 191
  • 4
  • 13
2
votes
2 answers

Paralellized execution in nested for using Cilk

I'm trying to implement a 2D-stencil algorithm that manipulates a matrix. For each field in the matrix, the fields above, below, left and right of it are to be added and divided by 4 in order to calculate the new value. This process may be iterated…
nitowa
  • 1,079
  • 2
  • 9
  • 21
2
votes
1 answer

Using Cilk array notation and STL vectors

I'm learning about parallel programming using the Cilk Plus extension to C++ (on gcc). One of the simplest refactors that I have read about is to use Cilk array notation, namely using it performing order-independent vector operations. i.e.: c[:] =…
Stershic
  • 191
  • 4
  • 13
2
votes
1 answer

Intel Cilk Plus code example with cilk_for keyword

cilk_for is a keyword of Intel Cilk Plus, and we can use it following way: cilk_for (int i = 0; i < 8; ++i) { do_work(i); } I need some more example codes of Intel Cilk Plus with cilk_for keyword.
Ata ul nasar
  • 89
  • 2
  • 9
2
votes
1 answer

Intel array notation vector operations

Intel documentation doesn't clarify if one does e.g. multiplication and addition of arrays: c[:] = c[:] + a[:]*b[:] will it do the following: for(i=0; i
laszlo.endre
  • 290
  • 2
  • 14
2
votes
3 answers

Why does my quicksort crash on large inputs?

I have created a median-of-3 standard Quick-sort implementation which sorts a large array of random integers. I would like to go up to at least a 100 million elements but preferably a billion. To increase speed, I am attempting to parallelize the…
Steinin
  • 541
  • 7
  • 20
1
2 3 4 5 6