What Applications are Suitable for BOINC?
From Unofficial BOINC Wiki
Contents |
[edit] General
The BOINC System is designed to support those applications that have large computation requirements, storage requirements, or both. If a Project can attract a million Participants, it could gain access to dozens of TeraFLOPs of CPU power and perhaps a Petabyte of storage.
However, because the resources of a BOINC Powered Project are unreliable and sporadically-connected Internet PCs, an application must have several properties to effectively use the BOINC System, namely:
- Public Appeal
- Independent Parallelism
- Low Data/Compute Ratio
- Fault Tolerance
[edit] Public Appeal
An application must be viewed as interesting and worthwhile by the public in order to gain large numbers of participants. A project must have the resources and commitment to maintain this interest, typically by creating a compelling Web Site and by generating interesting graphics in the application.
The Project Team must also engage, in a continuous manner, the active Participant Community. Intermittant communication is one of the main sources of discontent within the Participant Community.
[edit] Independent Parallelism
The application must be divisible into parallel parts with few or no data dependencies.
[edit] Low Data/Compute Ratio
Input and output data are sent through commercial Internet connections, which may be expensive and/or slow. As a rule of thumb, if your application produces or consumes more than a gigabyte of data per day of CPU Time, then it may be cheaper to use in-house cluster computing.
[edit] Fault Tolerance
A result returned from a public-resource computer cannot be assumed to be correct. Redundant Computing can be used to reduce the error probability, but not all the way to zero. If your application relies on 100% correctness, you shouldn't use the BOINC System.
A high degree of accuracy can be maintained in some cases by limiting the targeted Platforms and by the acceptance of a high reject ratio of reurned Results. In cases like this, the Project Team may have to consider granting of Credit even to those Results that "fail" the Validation Process. Another alternative is the granting of fixed amounts of Credit.
However, be advised that the Participant Community is very sensitive to the potentials for "cheating" and are not sympathetic to systems that seem to reward invalid Results.
[edit] UCB Source
[edit] Copyright ©
- 2005 University of California
- 2005 Paul D. Buck
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation.
RSS Feeds

