What is this error and how do I fix it?

What is this error and how do I fix it?

Ido not know if I am in the right forum here.I tried to compile a program for Cilkview and got the following error. The output was:

cilkview error: process killed by signal -7.
E:Attach to pid 4837-failed : operation not permmited.

I was just trying to run one of the example test programs cilk-for.

I am using Ubuntu 11.04 with Cilk Arts versions:

cilkview v1, 1, 8503

cilk++ (GCC 4.2.4) Cilkarts build 8503

I am just confused as to getting an old versionof cilk++ runing with a new version of Ubuntu 11.04.


If I am in the wrong fforum please direct me to the correct forum.

Thanks in advance.


7 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

Hey newport_j,

There is a bit of security in the Linux kernel that prevents Pin and GDB from attaching to a process. Disabling the security involves two files (you will need sudo access to edit both):

/etc/sysctl.d/10-ptrace.conf: This file is read at boot. To turn off the security, permanently, you should edit the file and set the kernel.yama.ptrace_scope variable to 0.

/proc/sys/kernel/yama/ptrace_scope: This file is created at boot-time, based on the kernel.yama.ptrace_scope variable in the file above. It contains only the value of kernel.yama.ptrace_scope (0 or 1). If you edit it to 0, Pin and GDB will be able to attach to running processes. But it will reset to 1 the next time the system boots unless you also change 10-ptrace.conf. Note: You cannot edit this file with emacs (even as root). You must:

% sudo bash
% echo 0 > /proc/sys/kernel/yama/ptrace_scope

FYI, if you update to Ubuntu 11.10, you won't be able to use Cilkscreen or Cilkview for Cilk++, at all. The version of Pin that we shipped with it is incompatible with the 3.0 Linux kernel. Cilkscreen and Cilkview for Cilk Plus use a newer version of Pin that works, but the old tools (for the old product)won't work with the new kernel. You should be fine with Ubuntu 11.04, though.

Okay that worked. AmI to assume thatI cannot upgrade to Ubuntu 11.10 if I want to conrtinue using my version of Cilk asI descibed above?You say that the fix you gave works, but not on Ubuntu 11.10.

Also, I tried to used the Cilk parallelism detector -

cilkscreen -w myprogram

and got

cilkscreen error: unable to open -w: binary.

It is a parallelization detector not a binary!

I am guessing this may be related to the fix you outlined above.

Thanks for the previous help and thanks in advance for any help you may now offer.


> Also, I tried to used the Cilk parallelism detector -
> cilkscreen -w myprogram
> and got
> cilkscreen error: unable to open -w: binary.

TheCilk Plusversion of the Cilkscreen driver doesn't accept a "-w" option, and I don't remember the Cilk++ version taking one either. I'm guessingthe Cilkscreen driver got confused and assumed that"-w" was the name of the application and "myprogram" was a parameter to be passed to it.

You can list the Cilkscreen command options with "cilkscreen -?".

- Barry

Cilk++ may continue to function in 11.10. I don't know. Certainly, the tools won't. The new version of Cilk, Cilk Plus, is available inICC (theIntel compiler), andin a specific branch of GCC 4.7. If you want to use it in GCC right now, you have to build GCC, yourself.


Cilkscreen is actually a race detector, not a parallelism detector. You can use it to detect whether there are races in your code. Cilkview is the parallelism analyzer, which might be what you mean to be running. Neither tool supports a "-w" flag, though.

I am aware that Cilkscreen and Cilkvieware differentprograms and do different tasks. I have a bunch of legacy c code that I would like to check for scalablity. On another productI have checked it up to 4 cores and it is 100% scalable (ie. add four cores and it runs 400% faster). I want to verify that and moveto more cores or to be more thorough.

I was suprised when I looked in your C++ Programmers Guide

Cilk++ for Linux - Version 1.0.

On page 77 of that document there is a section about a Cilkscreen parallelism analyzer. I read it again just to make sure and yes, it said cilkscreen paralellism analyzer. Is not Cilkview used for thta type of analysis Is so why use ciilkscreen?

I knew that -w is no flag for Cilkscreen so I was unsure as to why it would work. But there it was in black and white on the bottom section of page 77. I tried the command with qsort and I got the error that I told you about yesterday.

Now can I use this to check scalability or paralellism of my code?If so how?

Thanks in advance.



I've gone back and reviewedthe 1.1 documentation and you're correct. However, I think it's a documentation error.

When it was first implemented, the Cilkview tool was invoked using the command cilkscreen -w as a quick and easy hack. However, we always knew this was a bad UI. We eventually wrote a new driver for the Cilkview tool and removed the -w option from the cilkscreen command. Unfortunately we appear to have neglected to remove the option from the documentation. The definitive list of options the cilkscreen tool accepts are listed by the command cilkscreen -? If there's a conflict between that list and the documentation, believe the list from the tool.

The Cilkview Scalability Analyzer has it's own section in the Cilk++ V1.1 documention. It's invoked using the cilkview command.

I apologize for the confusion.

- Barry

Leave a Comment

Please sign in to add a comment. Not a member? Join today