13.07.2015 Views

automatically exploiting cross-invocation parallelism using runtime ...

automatically exploiting cross-invocation parallelism using runtime ...

automatically exploiting cross-invocation parallelism using runtime ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

header. This timestamp value gives a global order for iterations from all <strong>invocation</strong>sand will be used for scheduling and synchronizing iterations.5. 5. Finalize the communication. To control when each worker thread should return,an END TOKEN is broadcasted when exiting the outer loop in T s . That value willbe captured by the first consume instruction in T w ’s duplicated loop header. Two instructionsare inserted to decide when to return from T w : (1) a comparison instructionto check whether that value is an END TOKEN; (2) a branch instruction targeting thereturn BB if the comparison instruction generates true value.Up to this point, DOMORE has generated the initial code for scheduler thread andworker thread (Figure 3.6(d) and (e)). Later steps generate scheduling code, computeAddrcode which will be inserted into the scheduler function and workerSync code which willbe inserted into the worker function.37

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!