Intel® Cilk™ Plus

Linux make install is putting libraries in the wrong place!

I have two nearly identical 64-bit Linux systems, one of which runs OpenSuSE 12.1 and the other 11.4.  Running an identical build script on both has different effects, neither of which is entirely correct.  Under 12.1, it builds the 64-bit libraries correctly, but does not build the 32-bit cilkrts or tsan ones, which is a very minor problem as I regard 32-bit as obsolete for such systems.  Under 11.4, it does the same, but also installs the cilkrts libraries into the 32-bit directory!  There is a difference in the build output, where they say (respectively):

Using reducers

I may not have found the right documentation, but page 13 of the CilkPlus specification invites me to write code like the following:

template<class T>
class summation : public cilk::monoid_base<T> {
    typedef T value_type;
    inline void reduce (T * left, T * right) const {*left += *right;}
    inline void identity (T * loc) const {*loc = 0;}

I can find nothing stating that I should include a header, and it objects:

N-dimensional array parameters and CilkPlus gcc

I am checking out CilkPlus for usability, with the aim of giving a course on it, and want to ensure that what I teach is portable. Also, depending on where and how I give it, I may or may not have the Intel compilers on the system so need to be able to use CilkPlus gcc.

One of the more important aspects is matrix operations, which are very heavily used in scientific programming.  The following function definition is accepted by icc -std=c99, icpc and the CilkPlus version of gcc -std=c99 but not its g++.

    void fred (int m, int n, double a[m][n]);

Installing cilkplus on Mac Os X Mountain Lion


   I am trying to install cilkplus on Mac Os X Mountain Lion without too much success. First of all I have dowloaded the cilkplus branch from the gcc git repo and then I have configured as follows:

../configure --prefix=/opt/gcc-cilk --enable-languages=c,c++ --disable-multilib

The first hurdle was the presence of an old compatibility flag that I fixed

Any implementation of ZCA / __notify_intrinsic toggles WITHOUT Pin?

The specification for zero/low cost annotations lays out everything you need to know to find probe-ready points in the binary and modify them.

However, the only implementation I'm aware of that actually does this is libzca.  Libzca uses Pin and supports only a limited usage model -- you can insert function calls at __notify_intrinsic probe-ready only at load-time, before Pin does its binary translation thing.

Subscribe to Intel® Cilk™ Plus