Bayanihan: Building and Studying Web-Based Volunteer Computing Systems Using Java

Luis F. G. Sarmenta1, Satoshi Hirano2

1MIT Laboratory for Computer Science
545 Technology Square
Cambridge, MA 02139, USA

2Electrotechnical Laboratory
1-1-4 Umezono, Tsukuba, 305, Japan
(postscript file, 2.1MB)

To appear in
Future Generation Computer Systems
Speical Issue on Metacomputing


Project Bayanihan is developing the idea of volunteer computing, which seeks to enable people to form very large parallel computing networks very quickly by using ubiquitous and easy-to-use technologies such as web browsers and Java. By utilizing Java's object-oriented features, we have built a flexible software framework that makes it easy for programmers to write different volunteer computing applications, while allowing researchers to study and develop the underlying mechanisms behind them. In this paper, we show how we have used this framework to write master-worker style applications, and to develop approaches to the problems of programming interface, adaptive parallelism, fault-tolerance, computational security, scalability, and user interface design.


Luis Sarmenta