Expanding the volunteer computing scenario: A novel approach to use parallel applications on volunteer computing Articles uri icon

publication date

  • June 2012

start page

  • 881

end page

  • 889


  • 6


  • 28

International Standard Serial Number (ISSN)

  • 0167-739X

Electronic International Standard Serial Number (EISSN)

  • 1872-7115


  • Nowadays, high performance computing is being improved thanks to different platforms like clusters, grids, and volunteer computing environments. Volunteer computing is a type of distributed computing paradigm in which a large number of computers, volunteered by members of the general public, provide computing and storage resources for the execution of scientific projects. Currently, volunteer computing is used for high throughput computing, but it is not used for parallel applications based on MPI due to the difficulty in communicating among computing peers. As Sarmenta and Hirano (1999) [2] said, there are several research issues to be solved in volunteer computing platforms, one of them is 'implementing other types of applications'. In fact, the BOINC team (the well known volunteer computing development platform) is requesting 'MPI-like support' for volunteer computing as one of its hot topics. This paper proposes an extension of the usual capabilities of volunteer computing and desktop grid systems by allowing the execution of parallel applications, based on MPI, on these types of platforms. The goal of this paper is to describe a method to transform and adapt MPI applications in order to allow the execution of this type of applications on volunteer computing platforms and desktop grids. The proposed approach does not require an MPI installation on the client's side, which keeps the software to be installed on the client quite lightweight. The paper describes the prototype built, and also shows the evaluation made of this prototype, in order to test the viability of the idea proposed in this article, with promising results.


  • volunteer computing; high throughput computing; high performance computing; mpi; parallel application