Hybrid work stealing of locality-flexible and cancelable tasks for the APGAS library |
| |
Authors: | Jonas Posner Claudia Fohry |
| |
Affiliation: | 1.Reseach Group Programming Languages/Methodologies,University of Kassel,Kassel,Germany |
| |
Abstract: | Since large parallel machines are typically clusters of multicore nodes, parallel programs should be able to deal with both shared memory and distributed memory. This paper proposes a hybrid work stealing scheme, which combines the lifeline-based variant of distributed task pools with the node-internal load balancing of Java’s Fork/Join framework. We implemented our scheme by extending the APGAS library for Java, which is a branch of the X10 project. APGAS programmers can now spawn locality-flexible tasks with a new asyncAny construct. These tasks are transparently mapped to any resource in the overall system, so that the load is balanced over both nodes and cores. Unprocessed asyncAny-tasks can also be cancelled. In performance measurements with up to 144 workers on up to 12 nodes, we observed near linear speedups for four benchmarks and a low overhead for cancellation-related bookkeeping. |
| |
Keywords: | |
本文献已被 SpringerLink 等数据库收录! |
|