next up previous
Next: References Up: An Adaptive, Fault-tolerant Implementation Previous: Related Work

Summary and Conclusion

In this paper, we have shown how the BSP programming model can be implemented and used in Java-based volunteer computing systems. Our implementation makes use of existing adaptive parallelism and fault-tolerance mechanisms, such as eager scheduling, majority voting, and spot-checking, already developed in our Bayanihan volunteer computing framework, while providing a new programming interface with familiar and powerful methods for remote memory and message passing operations. At present, the performance and scalability of our implementation is limited in some applications, but is expected to improve with future work on mechanisms for lazy checkpointing and migration, caching, and peer-to-peer communication. Meanwhile, the BSP programming interface we have developed represents a significant improvement in programmability and flexibility over current programming interfaces for volunteer-based systems, and enables programmers to start porting and writing more realistic research applications for use with volunteer computing systems.

Luis Sarmenta