On 07/07/15 05:54, Jakub Jelinek wrote:
On Mon, Jul 06, 2015 at 03:34:51PM -0400, Nathan Sidwell wrote:
How does this interact with
#pragma acc routine {gang,worker,vector,seq} ?
Or is that something to be added later on?
That is to be added later on. I suspect such routines will trivially work, as
they'll be marked up with the loop head/tail functions and levels builtin (the
latter might need a bit of reworking). What will need additional work at that
point is the callers of routines -- they're typically called from a foo-single
mode, but need to get all threads into the called function. I'm thinking each
call site will look like a mini-loop[*] surrounded by a hesd/tail marker. (all
that can be done in the device-side compiler once real call sites are known.)
nathan
[*] of course it won't be a loop. Perhaps fork/join are less confusing names
after all. WDYT?