Lessons learned from implementing BSP
Future Generation Computer Systems - Special issue on HPCN '97
The Paderborn University BSP (PUB) library
Parallel Computing
MapReduce: simplified data processing on large clusters
Communications of the ACM - 50th anniversary issue: 1958 - 2008
ESCIENCE '08 Proceedings of the 2008 Fourth IEEE International Conference on eScience
DMTCP: Transparent checkpointing for cluster computations and the desktop
IPDPS '09 Proceedings of the 2009 IEEE International Symposium on Parallel&Distributed Processing
Towards Efficient MapReduce Using MPI
Proceedings of the 16th European PVM/MPI Users' Group Meeting on Recent Advances in Parallel Virtual Machine and Message Passing Interface
A bridging model for multi-core computing
Journal of Computer and System Sciences
International Journal of High Performance Computing Applications
Extending Executability of Applications on Varied Target Platforms
HPCC '11 Proceedings of the 2011 IEEE International Conference on High Performance Computing and Communications
Extending modern PaaS clouds with BSP to execute legacy MPI applications
Proceedings of the 4th annual Symposium on Cloud Computing
Hi-index | 0.00 |
One desired attribute of utility computing is the ability for any provider's offering to meet any user's requirement, but the variety of programming paradigms and platform models make this non-trivial. While higher specializations may be implemented on more generic layers, e.g. SaaS on PaaS, or PaaS on IaaS clouds, we attempt the inverse - deploying procedural message passing programs on a MapReduce platform. Although begun as an academic exercise, our experiences provide several insights into the feasibility of such a mapping and highlight some collateral benefits of deploying certain classes of MPI applications on MapReduce platforms. More generally, this potential for cross-paradigm execution marks a characteristic in the utility-like nature of cloud computing. Our approach is based on the concept of adapters, common in traditional utilities, to reconcile application requirements to platform facilities. Our design philosophy, middleware components, and results from a simple experiment are described.