Hello @all,
if an array of pointers is declared in the local space, does the elements realy resides in the local space?

what happens if i do the following:
Code :
local float *rows[5];
rows[id] = imageData + imageWidth * rowIndex;

does every thread manipulate the value of rows[id] in the local space?
if yes, how can i create an array of pointers in private space which are pointing to
addresses in the local space?

i want do this:
local float *cRow = rows[0];
rows[0] = rows[1];
rows[1] = rows[2];
rows[2] = cRow;

but the problem is, that the threads accesses the local space, the local space is slower than the registers where the private data is stored.

one solution is to use an array of indexes for the rows.
int indexes[3];
every element stores an index of an a row.
to access an element in rows i need to do rows[indexes[0]];
but its also not fast, because im accessing the rows throug indexes.

need advices.