Institutional Repository
Technical University of Crete
EN  |  EL



My Space

A dependency-aware task distribution extension to the BOINC framework for volunteer computing

Pissadakis Emmanouil

Full record

Year 2016
Type of Item Diploma Work
Bibliographic Citation Emmanouil Pissadakis, "A dependency-aware task distribution extension to the BOINC framework for volunteer computing", Diploma Work, School of Electrical and Computer Engineering, Technical University of Crete, Chania, Greece, 2016
Appears in Collections


Volunteer Computing is one of the distributed computing paradigms that has gained attention in recent years. It is used by a number of scientific researchers to perform scientific projects such as climate prediction, search for extraterrestrial live and protein structure prediction. It is an innovative approach to high performance computing that relies on volunteers who donate their personal computers’ unused resources to a computationally intensive research project, as well as provides scientists with the necessary means for performing projects that require huge resources. BOINC (Berkeley Open Infrastructure for Network Computing) is an open-source framework for solving large-scale computational problems by means of volunteer computing. In contrast to massive parallel computing, applications are distributed into a large number of heterogeneous client computers connected by the Internet where each computer is assigned individual tasks that can be solved independently without the need of communication upon the clients. A BOINC-based project provides its own servers. Hosts download application’s executables and data files from servers, carry out tasks (by running applications against specific data files) and upload the output files. However various problems exist while deploying applications over these heterogeneous machines using BOINC. The tasks of each application had to be independent due to the lack of communication between the clients, otherwise it is not compatible. Furthermore porting application to BOINC middleware is a very complex process. Several server daemons had to be implemented to achieve that. To resolve these issues, this thesis proposes a framework based on the Boinc infrastructure, the mCluster software framework. MCluster adopts a task-based programming model designed to resolve the existed dependencies. Finally, a source to source translator is included in this framework in order to transform this application into BOINC compatible tasks, ready to be executed from the available clients by implementing all the appropriate daemons that BOINC requires.

Available Files