Software Archive
Read-only legacy content
17061 Discussions

A quick question: how can I get the current worker ID and the total number of workers?

Zhunping_Zhang
Beginner
727 Views
Cannot find it in the language specifiaction (http://software.intel.com/file/40297), thanks!

0 Kudos
1 Reply
Barry_T_Intel
Employee
727 Views
That's because it's not part of the language specification. :o)

TheCilk RuntimeAPI is documented in the include files in the cilk directory. The information is in Doxygen format, which is pretty readable. See cilk/ReadMe.html for information for how to downloadDoxygen and use it to generate HTML pages (or other formats).

Anyway, the functions you're looking for are __cilkrts_get_worker_number() and __cilkrts_get_nworkers(). They're declared in cilk/cilk_api.h.

Warning:If you're using __cilkrts_get_worker_number() for anything that's not justcosmetic, you probably want to use a reducer instead.

- Barry
0 Kudos
Reply