Research Article
Locality-Aware Task Scheduling and Data Distribution for OpenMP Programs on NUMA Systems and Manycore Processors
Algorithm 3
Work-dealing algorithm for TILEPro64.
(1) Procedure deal-work(task T, queues , current home cache n, | current data distribution policy p, access-intensive dependence index a) | (2) if then | (3) if exists a then | (4) find containing T.depend_list[]; | (5) enqueue(, T); | (6) else | (7) Populate with bytes in T.depend_list; | (8) if then | (9) find with least home cache latency cost to ; | (10) enqueue(, T); | (11) else | (12) enqueue(, T); | (13) end | (14) end | (15) else | (16) enqueue(, T); | (17) end | (18) end |
|