What is BOINC

BOINC is the next evolution in Distributed Computing. What's Distributed Computing you ask? Distributed Computing or DC for short, is the process of taking a large computational problem, dividing it up into little pieces and then giving those little pieces to hundreds of computers to solve each piece. Then all the completed pieces are returned to the originator where the data is reassembled to provide a result. DC has been around for some time.

Even though Seti@home wasn't the first DC project, it exploded in popularity shortly after it's release in 1999. Anyone was able to download Seti@home to assist with the Search for Extra-Terrestrial Intelligence. The Seti@home client would request a small portion of data from Berkeley University's database of radio telescope recordings in the form of a Work Unit (WU). The client would then run complex calculations on this WU to see if there's any possibility of there being an radio broadcasts from deep space. The results would then be returned back to Berkeley. To reduce chance of error, the same WU is always sent to at least three different computers. This way there is verification that each computer came to the same conclusion.

Seti@home revealed how powerful DC can be when combined with the Internet. This quickly lead to an influx of other DC projects that tried to solve everything from what's the largest prime number, to a cure for cancer. The problem was if you wanted to support multiple projects, you couldn't run them on the same computer at the same time without losing efficiency since they would battle for CPU time.

Also, if you only did support one project, your computer would only be used if that one project was running. Large DC systems are very complex and hence they tend to have a lot of down time. This could leave potentially millions of computers without work during these outages. There has to be a better way.

This is where the boys over at Berkeley came back into the picture. They too were aware of the limitations of the current DC systems so the developed the next evolution in DC technology. They developed Berkeley Open Infrastructure for Network Computing...BOINC.

From a DC developer's side of things, BOINC is a common framework that can be use to quickly develop there systems by eliminating the need to develop a communication system, a user interface. Instead, developers can concentrate on the science.

From a user's point of view, BOINC is a application that can be used to easily allow your computer to run multiple DC applications from a single common interface.

If you want to think of Distributed Computing as retail stores, BOINC would be the mall. When store owner's choose to set up shop in a mall, they no longer need to worry about building a building, they can simply move right on into the mall. Shoppers no longer need to drive all over the city to find what they need. They can simply go to the mall and get everything they want. If one store happens to be out of stock on something, the consumer can easily walk to the next store.