BOINC: An Open Platform for Public-Resource Computing David P. Anderson Space Sciences Laboratory U.C. Berkeley.

Slides:



Advertisements
Similar presentations
Building Portals to access Grid Middleware National Technical University of Athens Konstantinos Dolkas, On behalf of Andreas Menychtas.
Advertisements

BOINC: A System for Public-Resource Computing and Storage David P. Anderson University of California, Berkeley.
Chap 2 System Structures.
Operating-System Structures
1 Configuring Internet- related services (April 22, 2015) © Abdou Illia, Spring 2015.
Using DSVM to Implement a Distributed File System Ramon Lawrence Dept. of Computer Science
David P. Anderson Space Sciences Laboratory University of California – Berkeley Volunteer Computing.
What does do? Mini-project for CSE 260 Qian Peng 15 November 2001 Ref.
CompuNet Grid Computing Milena Natanov Keren Kotlovsky Project Supervisor: Zvika Berkovich Lab Chief Engineer: Dr. Ilana David Spring, /
OCT1 Principles From Chapter One of “Distributed Systems Concepts and Design”
BOINC The Year in Review David P. Anderson Space Sciences Laboratory U.C. Berkeley 22 Oct 2009.
Distributed Information Systems - The Client server model
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment Chapter 8: Implementing and Managing Printers.
How Clients and Servers Work Together. Objectives Learn about the interaction of clients and servers Explore the features and functions of Web servers.
Introduction to client/server architecture
1 Chapter Overview Introduction to Windows XP Professional Printing Setting Up Network Printers Connecting to Network Printers Configuring Network Printers.
Tripwire Enterprise Server – Getting Started Doreen Meyer and Vincent Fox UC Davis, Information and Education Technology June 6, 2006.
Christopher M. Pascucci Basic Structural Concepts of.NET Browser – Server Interaction.
Linux Operations and Administration
2440: 141 Web Site Administration Remote Web Server Access Tools Instructor: Enoch E. Damson.
Hands-On Microsoft Windows Server 2008 Chapter 1 Introduction to Windows Server 2008.
1 Web Database Processing. Web Database Applications Static Report Publishing a report is prepared from a database application and exported to HTML DB.
INTRODUCTION TO WEB DATABASE PROGRAMMING
Grid Toolkits Globus, Condor, BOINC, Xgrid Young Suk Moon.
Discussion and conclusion The OGC SOS describes a global standard for storing and recalling sensor data and the associated metadata. The standard covers.
Public-resource computing for CEPC Simulation Wenxiao Kan Computing Center/Institute of High Physics Energy Chinese Academic of Science CEPC2014 Scientific.
Databases and the Internet. Lecture Objectives Databases and the Internet Characteristics and Benefits of Internet Server-Side vs. Client-Side Special.
Hands-On Microsoft Windows Server 2008 Chapter 1 Introduction to Windows Server 2008.
Chapter 10 Intro to Routing & Switching.  Upon completion of this chapter, you should be able to:  Explain how the functions of the application layer,
1 port BOSS on Wenjing Wu (IHEP-CC)
LINUX System : Lecture 2 OS and UNIX summary Bong-Soo Sohn Assistant Professor School of Computer Science and Engineering Chung-Ang University Acknowledgement.
A Guided Tour of BOINC David P. Anderson Space Sciences Lab University of California, Berkeley TACC November 8, 2013.
A Distributed Computing System Based on BOINC September - CHEP 2004 Pedro Andrade António Amorim Jaime Villate.
Robert Fourer, Jun Ma, Kipp Martin Copyright 2006 An Enterprise Computational System Built on the Optimization Services (OS) Framework and Standards Jun.
Chapter 1: The Internet and the WWW CIS 275—Web Application Development for Business I.
Guide to Linux Installation and Administration, 2e1 Chapter 2 Planning Your System.
David P. Anderson Space Sciences Laboratory University of California – Berkeley Designing Middleware for Volunteer Computing.
Introduction to the BOINC software David P. Anderson Space Sciences Laboratory University of California, Berkeley.
Wenjing Wu Computer Center, Institute of High Energy Physics Chinese Academy of Sciences, Beijing BOINC workshop 2013.
07:44:46Service Oriented Cyberinfrastructure Lab, Introduction to BOINC By: Andrew J Younge
Lessons Learned from David P. Anderson Director, Spaces Sciences Laboratory U.C. Berkeley April 2, 2002.
IODE Ocean Data Portal - ODP  The objective of the IODE Ocean Data Portal (ODP) is to facilitate and promote the exchange and dissemination of marine.
Case Study.  Client needed to build data collection agents for various mobile platform  This needs to be integrated with the existing J2ee server 
and Citizen Cyber-Science David P. Anderson Space Sciences Laboratory U.C. Berkeley.
BOINC: Progress and Plans David P. Anderson Space Sciences Lab University of California, Berkeley BOINC:FAST August 2013.
David P. Anderson Space Sciences Laboratory University of California – Berkeley Designing Middleware for Volunteer Computing.
David P. Anderson Space Sciences Laboratory University of California – Berkeley Public and Grid Computing.
TEMPLATE DESIGN © BOINC: Middleware for Volunteer Computing David P. Anderson Space Sciences Laboratory University of.
Configuring and Troubleshooting Identity and Access Solutions with Windows Server® 2008 Active Directory®
Web Technologies Lecture 8 Server side web. Client Side vs. Server Side Web Client-side code executes on the end-user's computer, usually within a web.
1 Terminology. 2 Requirements for Network Printing Print server Sufficient RAM to process documents Sufficient disk space on the print server.
David P. Anderson Space Sciences Laboratory University of California – Berkeley Public Distributed Computing with BOINC.
BOINC: An Open Platform for Public-Resource Computing David P. Anderson Space Sciences Laboratory U.C. Berkeley.
David P. Anderson Space Sciences Laboratory University of California – Berkeley Public Distributed Computing with BOINC.
An operating system (OS) is a collection of system programs that together control the operation of a computer system.
Active-HDL Server Farm Course 11. All materials updated on: September 30, 2004 Outline 1.Introduction 2.Advantages 3.Requirements 4.Installation 5.Architecture.
Volunteer Computing: Involving the World in Science David P. Anderson U.C. Berkeley Space Sciences Lab February 16, 2007.
Using volunteered resources for data-intensive computing and storage David Anderson Space Sciences Lab UC Berkeley 10 April 2012.
Volunteer Computing with BOINC: a Tutorial David P. Anderson Space Sciences Laboratory University of California – Berkeley May 16, 2006.
Volunteer Computing: SETI and Beyond David P
2. OPERATING SYSTEM 2.1 Operating System Function
Credits: 3 CIE: 50 Marks SEE:100 Marks Lab: Embedded and IOT Lab
Chapter 2: System Structures
Introduction to Operating System (OS)
Introduction to client/server architecture
The software infrastructure of II
Chapter 2: System Structures
Configuring Internet-related services
Storing and Accessing G-OnRamp’s Assembly Hubs outside of Galaxy
Presentation transcript:

BOINC: An Open Platform for Public-Resource Computing David P. Anderson Space Sciences Laboratory U.C. Berkeley

Public-resource computing Home PCs business academic Advantages: scale free growth public education no policy issues Challenges: low BW at client costly BW at server firewall/NAT issues sporadic connection untrustworthy, insecure clients server security heterogeneity need PR, glitzy GUI your computers

Uses public-resource computing for radio DSP Better data analysis: –Signal types (Gaussian, spike, pulsed, triplet) –Multiple frequency resolutions –Multiple drift rates, coherent integration Tradeoff: smaller frequency band –2.5MHz vs. 100 MHz

Operations data recorder screensavers science DBuser DB WU storage splitters DLT tapes data server result queue acct. queue garbage collector tape archive, delete tape backup master DB redundancy checking RFI elimination repeat detection web site CGI program web page generator

Achievements of 1,000,000 years of CPU time in 3 years Sustained 30 TeraFLOPs 1.5E21 floating-point operations 3,600,000 users in 226 countries 40 Terabytes of data processed 3 billion “events” detected Solved scaling, security problems

Extensions of Broadband pulse search on existing data Parkes observatory: Southern sky Multi-beam receivers Expanded frequency range Use KL transform Data archival on clients

software shortcomings Monolithic Limited communication model Limited computation/data model Incoherent, insecure accounting

Goals of a PRC platform Research lab X University YPublic project Z projects applications resource pool Participants install one program, select projects, specify constraints; all else is automatic Projects are autonomous Advantages of a shared platform: Better long-term resource utilization Better instantaneous resource utilization Faster/cheaper for projects, software is better Easier for projects to get participants Participants learn more

Distributed computing platforms Academic and open-source –Globus –Cosm –XtremWeb –Jxta Commercial –Entropia –United Devices –Parabon

Goals of BOINC (Berkeley Open Infrastructure for Network Computing) Public-resource computing/storage Multi-project, multi-application –Participants can apportion resources Handle fairly diverse applications Work with legacy apps Support many participant platforms Small, simple

General structure of BOINC Project: Participant: Scheduling server (C++) BOINC DB (MySQL) Project work manager data server (HTTP) App agent data server (HTTP) Web interfaces (PHP) Core agent (C++)

Project Files Attributes: –Name –URL list –Persistent flag –Upload-when-present flag –executable –MD5 checksum Files are immutable Files may originate in client or in project work manager protein_db.12 ftp://x.y/z fw7398h

Projects/apps/versions Platforms Windows/x86 Linux/x86 MacOS/PPC … Applications nameBeta version Production version Arecibo SETI129 Parkes SETI115 …… App versions versionFile infos 11 … 13 … ……

Workunits and results Workunit nameXML docExpected resources cmdline args wu15 wu16 Result nameExit code CPU time XML inXML out Stderr out res res Application Host out123 out123 1 out aed847 Foo.C, line 124: divide by zero out123 out123 input

Work sequences (long computations with big footprints) Results (or workunits) are linked into “sequences” Normally, a result is sent only to the host that handled the previous result If a result times out, the sequence is shifted to another host Upload state Check for abort

Remote file management Clients regularly report persistent files Scheduling server maintains DB of files on active hosts Project work manager can issue requests for particular hosts to upload, download, or delete files

Hosts and scheduling Host measurements –CPU performance (integer/FP/memory) –RAM, cache, disk free/total –On/connected statistics –Network bandwidth statistics Workunit properties –RAM/disk/computation requirements Scheduling policy –feasibility –High/low water mark

Accounting and result validation Standardized unit of credit (CPEuro?) –CPU time * (int+FP+mem) Result validation (optional): –Compare redundant results, flag incorrect results Granted credit: –Minimum of claimed credit among correct results

Participant preferences Examples: –Work only while user away –Confirm before connecting –Don’t work if on batteries –High, low water marks –Limits on disk space, bandwidth –Application-specific preferences –List of projects + authenticators + % allocation Edited via Web interface Can define multiple “preference sets”

Participation Initial project: –Create account on project web site –Authenticator is ed –Install core client, enter authenticator Subsequent projects: –Authenticator is ed –Create account on project web site –Add project to preferences on home site

Client/server protocol (XML-RPC) Request –Authentication –Host description –Persistent file descriptions –Result descriptions –Duration of work requested Reply –Application, workunit, result descriptors –Result acknowledgements –File transfer descriptors –New preferences –Control messages (redirect, back off, etc.)

Core client: goals Function –Use multiprocessors –Concurrent communicate/compute –Low-profile file transfer –Obey preferences Appearance –Application, screensaver or service Multi-platform

Client file structure BOINC home directory Project_1Project_nCPU_1CPU_m app1.exe file1332 file3328 app.exe infile outfile boinc.exe client_state.xml accounts.xml links

file transfers running applications wait() Client FSM structure active sockets select() HTTP transactions main loop poll Scheduler requests

Application Programming API is optional Checkpoint/restart: MFILE class Graphics –Application window –Screensaver Interact w/ core client via XML files

Conclusion BOINC status –Mostly feature-complete –Client runs on Linux, Solaris, Windows, MacOS X –Small: client is 5,000 lines, server 2,000 Projects: –Astropulse (later this year) –Other (Parkes etc.) –Genetic art –Climate, oceanography projects