At Sun, 21 Feb 2010 13:31:00 -0800, Josh Gargus wrote:
There was automatic sequentialization when potentially multiple turtles are writing into the same variable at one "step". This was needed semantically. I wonder if this automatic (and somewhat eager) serial execution is good for a GPU implementation or not.
Nope, it isn't. Why is it necessary for the semantics? Which part of your dissertation describes this?
I have a strong mental block toe look at it, but to avoid introducing the explicit "reduce" operator, or "do in order" block, but make the system do the reasonable thing was the goal.
Let us say if we have bunch of turtles and there is a line:
patch's value | increase by | 1
to make a map of turtles (each patch cell should hold the number of turtles at the cell), it should just work without needing the programmer to resolve the read-write dependency explicitly.
-- Yoshiki