Scheduling non-uniform parallel loops on distributed memory machines
Vikram A. Saletore, J. Liu, Yiu B. Lam · 2002
A distributed self-scheduling scheme (DSSS) to schedule parallel loops with variable length iteration execution times on distributed memory machines is presented. DSSS combines static and dynamic scheduling and draws advantages from both. State scheduling reduces scheduling overhead and dynamic scheduling balances the workload. Data distribution is partially solved since a major portion of the iterations are scheduled statically. For data needed in the dynamic scheduling phase, duplication of data minimizes data movement. DSSS and other well-known self-scheduling schemes were implemented on a 64 processor nCUBE/7. Experiments showed that DSSS performed well on parallel loops with different characteristics.>