Horde: A Framework for Parallel Programming on Multi-Core Clusters

薛巍,张凯,陈康
DOI: https://doi.org/10.16511/j.cnki.qhdxxb.2011.11.007
2011-01-01
Abstract:Parallel programming hardware to improve performance. utilizes the capacity of parallel However, parallel applications are difficult to program on multi-core clusters. This paper presents a framework for parallel programming on mult?core clusters called Horde. This framework provides a set of easy to use message-passing interfaces and an event driven programming model while helps programmers express parallelisms in the application level and decouple the computational decomposition strategy from the hardware architecture. As such, Horde releases programmers from the difficulties of building complex parallel programs and accommodates different infrastructures while maintaining reasonable performance. Horde also provides task-object migration, which is the key technology for dynamic load balancing and fault tolerance. Tests on a 128-core cluster demonstrate that this system enables high performance parallel programs as well as effective job migration.
What problem does this paper attempt to address?