David P. Anderson

Space Sciences Laboratory

University of California – Berkeley

davea@ssl.berkeley.edu

Designing Middleware

for Volunteer Computing

Volunteer computing

Project	start	where	area	#hosts

GIMPS	1994	math	10,000

distributed.net	1995	cryptography	100,000

SETI@home I	1999	UCB	SETI	600,000

Folding@home	1999	Stanford	biology	200,000

United Devices	2002	commercial	biomedicine	200,000

CPDN	2003	Oxford	climate change	150,000

LHC@home	2004	CERN	physics	60,000

Predictor@home	2004	Scripps	biology	100,000

WCG	2004	IBM	biomedicine	200,000

Einstein@home	2005	LIGO	astrophysics	200,000

SETI@home II	2005	UCB	SETI	850,000

Rosetta@home	2005	U. Wash	biology	100,000

SIMAP	2005	T.U. Munich	bioinformatics	10,000

Total of BOINC-based projects: 600,000 participants,

940,000 hosts, 380 TeraFLOPS actual

Why volunteer computing?

1 billion PCs

55% privately owned

most are on Internet

If 100M participate:

> 100 PetaFLOPs, 1 Exabyte (10^18) storage

Consumer products drive technology

your computers

academic

business

home PCs

What's different about volunteer computing?

Must attract and retain volunteers

Credit

Community features

Easy installation; autonomic

Volunteers are unreliable

one solution: redundant computing

Heterogeneous, dynamic resource pool

Berkeley Open Infrastructure for Network Computing (BOINC)

Started in 2002; funded by NSF

2.75 FTEs; lots of volunteers

Open-source (LGPL)

client: 20K lines, C++

server: 10K lines, C++/Python

web: 10K lines, PHP

http://boinc.berkeley.edu

SETI

physics

Climate

biomedical

Joe

Alice

Jens

volunteers

projects

volunteers “attach”

computers to projects,

allocate resources

Client structure

App

App

App

Core client

screensaver

servers

Server structure

MySQL

Transitioner

Scheduler

Feeder

File deleter

DB purger

Assimilator

Validator

Work creator

Shared mem

clients

Web

volunteers

1 server can handle 8-25 million tasks per day

Credit

Credit information flow

Goals of BOINC

More projects

Improve/simplify tools

World Community Grid

More participation

Simplify everything

GridRepublic

Handle data-intensive apps better

BitTorrent, use network topology

Task graphs

David

2004-01-15T13:39:42

David Anderson