SlideShare a Scribd company logo
1 of 41
Cover from Linux magazine, BOINC
Berkeley Open Infrastructure
for Network Computing
http://bit.ly/boinc_srbiau
To get more references visit:
Pooyan
Mehrparvar
i. A brief introduction to volunteer computing & BOINC
ii. BOINC’s applications
iii. BOINC’s architecture
iv. How to join a popular BOINC project
v. How to set-up your own BOINC project
 Why do we choose this topic?
 What is volunteer computing?
 What is BOINC?
 An established technology that enables
ordinary citizens donate their computing
resources to one or more "projects".
 BOINC is the most widely-used
middleware system
 a client program runs on the volunteer's
computer
 BOINC was introduced by David P.
Anderson
 BOINC is designed to support applications that
have large computation requirements, storage
requirements, or both. The main requirement of
the application is that it be divisible into a large
number (thousands or millions) of jobs that can
be done independently.
Goal:
Use all the computers in the world, all
the time, to do worthwhile things
 Security: BOINC uses code signing to prevent
distribution of malicious executables. Each
project has a key pair for code signing and the
private key kept on network-isolated machine
 Virtualization as a solution for client’s security
 Project:
• An entity that does distributed computing using BOINC.
 Application:
• A project can include multiple applications
• an application includes several programs (for different platforms) and a set of
workunits and results
 Application versions:
• A particular application program version,compiled for a particular platform
 Workunit:
a computation to be performed.
• associated with an application, not with an application version
 Result:
• an instance of a computation, either unstarted, in progress, or completed.
• Each result is associated with a workunit.
 Cycle scavenging
 BOINC uses computers’s idle cycles of CPU/GPU and other resources to operate
(by default)
 To avoid high battery consumption/3G charge the BOINC android app runs on
A/C power & WiFi connection (by default)
Client can run BOINC as:
Screensaver (with fancy graphics)
Window service (running in the background)
Application (displaying results in tabular form)
 SETI@home development (1998)
 Ifrastructure issues, United devices (2000)
 Uited devices falling out, SETI@home failed, hacked(2001)
 BOINC was introduced (2002)
 Climateprediction.net, SETI@home, LHC@home were implemented on BOINC (2004)
 Rosseta@home, Einstein@home, IBM World community Grid, Primegride (2005)
 BOINCstats (BAM!), Gridrepublic, BOINC wrapper (2006)
 GPU support, Multi-core apps (2008)
 BOINC packages for debian (2010)
 Apps in virtual machines, vbox wrapper (Server-side) (2011)
 Android, Condor/OSG collaboration, Git (2012)
 Virtualbox client (2013)
 Samsung app (Power sleep), HTC app (Power to give) (2014)
 Server: Unix-based operating sytems (Debian based linux is recommended)
Microsoft Windows Vista or later (POSIX ready)
 Client:
 Linux (x86/x64)
 Microsoft windows (x86/x64)
 MacOS (x86/x64)
 Playstation3
 Android
Virtualization as a solution for cross-platform distributed
systems (Virtualbox, Vmware, VirtualPC,...)
 FLOPS as a measure for computer performance in scientific fields
 (Floating point operations per second)
 Some computer systems are unable to to run FLOPS benchamrk
 MIPS/MOPS: suitable for database query, word processing,
spreadsheets, or to run multiple virtual operating systems
 Fastest supercomputer: China's Tianhe-2 running 33.86 petaflops (June 10, 2013)
 BOINC: Active: 232,691 volunteers, 718,577 computers.
24-hour average: 8.308 petaFLOPS (December 19, 2014)
 General-purpose computing on graphics processing units (GPGPU)
 Playstation 4 (ATI) :
18 compute units, 64 cores per unit = 1,152 cores
Theorical peak performance = 1.84 TFLOPS
 Playstation 3’s CUDA (NVIDIA) is widley used in BOINC projects
e.g Folding@home
 Computational Science : rosseta@home
 Virtual campus supercomputing : univ. of
Westminster in London
 Desktop grids for business : Slicify project
 Integration with HTCondor to allow Globus-based
grids to run jobs for BOINC projects : Einstein@OSG
Computational science is concerned with constructing
mathematical models and quantitative analysis techniques and
using computers to analyze and solve scientific problems.
BOINC is used in:
 Physics, Astrophysics
 Mathematics
 Biology and medicince (Protein folding)
 Distributed sensing
 Climate modeling
 Games, 3D animation Rendering,...
BOINC popular projects:
 Physics, Astrophysics: LHC@home, Einstein@home, SETI@home
 Mathematics: SZTAKI Desktop Grid, Primegride
 Biology and medicince: Folding@home, Rosseta@home
 Distributed sensing: Quake Catcher Network
 Climate modeling: Climateprediction.net
 Games, 3D animation Rendering,... : Chess@home, Enigma@home
Find more projects on:
http://boinc.berkeley.edu/projects.php
 Amino Acids, Proteins, DNA
 Protein structure prediction / Modeling proteins structure
 Rosseta@home helps to find a cure for:
 Alzheimer’s disease
 HIV
 Malaria
 Anthrax
 Herpes simplex virus 1
 Crowdsourcing is the process of getting work or funding,
usually online, from a crowd of people.
 Human vs Computer
 From the creators of Rosseta@home (Washington Univ.)
 Similar to Rosetta@home, Foldit is aimed as a means of
discovering native protein structures faster, through a
combination of crowdsourcing and distributed computing.
 Game with a purpose
 In 2011 gamers helped to decipher the crystal structure of
M-PMV (virus causing AIDS in monkeys)
Snapshot of Foldit game
Challenges while using a BOINC system:
How can we depend on clients? Are they permanent?
Will they reach the deadlines?
Is the produced result valid?
How can we trust a BOINC server?
How can we trust a BOINC client?
How to send jobs to various platforms?
Some features of a BOINC system:
homogeneous redundancy (sending workunits only to computers of the
same platform—e.g.: Win XP SP2 only.)
workunit trickling (sending information to the server before the workunit
completes)
locality scheduling (sending workunits to computers that already have the
necessary files and creating work on demand)
work distribution based on host parameters (workunits requiring 512
MB of RAM, for example, will only be sent to hosts having at least that much
RAM, We send more jobs to multi-core CPUs/GPUs)
Double checking: (server sends the same workunit to at least two clients,
then it compares the result by validation techniques (bitwise, sample trivial,
fuzzy) or a customized validation technique
Job scheduling is needed in both server & client: priority between
different tasks, reaching deadlines
 To avoid cheating, credits are given when after the job is validated by the server
In multitasking computer systems, a daemon is a computer
program that runs as a background process, rather than being
under the direct control of an interactive user
 Generator
 Transitioner
 Feeder
 Scheduler
 Validator
 Assimilator
 File deleter
 Regiter at Boincstats (BAM)
 Choose your project(s)
 Join/create a team (optional)
 Download the BOINC client (BOINC manager)
 Log into software
 Immediately the project(s) will be attached
 Tasks will be downloaded
 Completed tasks will be uploaded to the server
 You will gain due to your performance
 New job will be downloaded
Step by step manual is available at:
http://bit.ly/boinc_srbiau
BOINC client manager running four tasks (three projects)
Project configuration in a nutshell!:
 Configure a LAMP (Linux, Apache server, Mysql, Php/Phyton)
A virtualbox debian linux is available at BOINC’s website
 Develope your own project (mostly done in C++ (GCC), Fortran)
 Attach your project url in boincmanager (Client)
“your server ip/projectname” (exp: http://192.168.1.80/testproject)
 Monitor your project perfomance/administaration at
“your server ip/projectname_ops” (exp: http://192.168.1.80/testproject_ops)
Step by step video is available at:
http://bit.ly/boinc_srbiau
BOINC server (left) + BOINC manager client (right) using virualization
 Conceived to be used by scientists, not IT professionals
 BOINC offers tools for
◦ Creating, starting, stopping and querying projects
◦ Adding new applications, new platforms, …
◦ Creating workunits
◦ Monitoring server performance
(All these procedures could be done by UNIX shell commands directly)
 A precise evaluation before choosing BOINC as a solution, comparing to
other alternatives (JPPF, other cloud or distributed systems)
 Fundamental undrestaning of BOINC architecture including it’s
daemons, repositories, shell-script commands, etc
 Good knowledge and experience of linux environment (shell)
 C/C++, Fortran programming skills (GCC, VC++, etc)
 Server/network configuration
 Security issues
 The architecture is centeriliezed in contrast of most Grid systems
 Insufficient Interest from Computer Science
 Insufficient Interest from scientists
 Insufficient Interest from funding agencies
 According to official reports volunteers are not increasing
 Complexity of server and job submission
 Insufficient documentations (obsolete docs)
 Rare experiment in web society (You can’t find your answers in BOINC
forums, Stack-overflow, etc), Risk of failure

More Related Content

Viewers also liked (6)

Grid computing the grid
Grid computing the gridGrid computing the grid
Grid computing the grid
 
Gamification for volunteer cloud computing
Gamification for volunteer cloud computingGamification for volunteer cloud computing
Gamification for volunteer cloud computing
 
NoSQL databases - An introduction
NoSQL databases - An introductionNoSQL databases - An introduction
NoSQL databases - An introduction
 
How Blockchain and Smart Buildings can Reshape the Internet
How Blockchain and Smart Buildings can Reshape the InternetHow Blockchain and Smart Buildings can Reshape the Internet
How Blockchain and Smart Buildings can Reshape the Internet
 
Different Types of Containers in Spring
Different Types of Containers in Spring Different Types of Containers in Spring
Different Types of Containers in Spring
 
Seminar Presentation Hadoop
Seminar Presentation HadoopSeminar Presentation Hadoop
Seminar Presentation Hadoop
 

Similar to Volunteer Computing using BOINC

2nd ARM Developer Day - mbed Workshop - ARM
2nd ARM Developer Day - mbed Workshop - ARM2nd ARM Developer Day - mbed Workshop - ARM
2nd ARM Developer Day - mbed Workshop - ARM
Antonio Mondragon
 
Add the power of the Web to your embedded devices with WPE WebKit
Add the power of the Web to your embedded devices with WPE WebKitAdd the power of the Web to your embedded devices with WPE WebKit
Add the power of the Web to your embedded devices with WPE WebKit
Igalia
 
Srikanth_PILLI_CV_latest
Srikanth_PILLI_CV_latestSrikanth_PILLI_CV_latest
Srikanth_PILLI_CV_latest
Srikanth Pilli
 
Cloud BioLinux S.Africa
Cloud BioLinux S.AfricaCloud BioLinux S.Africa
Cloud BioLinux S.Africa
Ntino Krampis
 
Building End-user Applications on Embedded Devices with WPE
Building End-user Applications on Embedded Devices with WPEBuilding End-user Applications on Embedded Devices with WPE
Building End-user Applications on Embedded Devices with WPE
Igalia
 
Using OSGi for the Realization of Complex Building Management Systems - Peter...
Using OSGi for the Realization of Complex Building Management Systems - Peter...Using OSGi for the Realization of Complex Building Management Systems - Peter...
Using OSGi for the Realization of Complex Building Management Systems - Peter...
mfrancis
 
Wonho Park_20151209
Wonho Park_20151209Wonho Park_20151209
Wonho Park_20151209
Wonho Park
 
CHPC Workshop Morning Session
CHPC Workshop Morning SessionCHPC Workshop Morning Session
CHPC Workshop Morning Session
Ntino Krampis
 

Similar to Volunteer Computing using BOINC (20)

2nd ARM Developer Day - mbed Workshop - ARM
2nd ARM Developer Day - mbed Workshop - ARM2nd ARM Developer Day - mbed Workshop - ARM
2nd ARM Developer Day - mbed Workshop - ARM
 
Software update for IoT: the current state of play
Software update for IoT: the current state of playSoftware update for IoT: the current state of play
Software update for IoT: the current state of play
 
Bfc Presentation
Bfc PresentationBfc Presentation
Bfc Presentation
 
Add the power of the Web to your embedded devices with WPE WebKit
Add the power of the Web to your embedded devices with WPE WebKitAdd the power of the Web to your embedded devices with WPE WebKit
Add the power of the Web to your embedded devices with WPE WebKit
 
Srikanth_PILLI_CV_latest
Srikanth_PILLI_CV_latestSrikanth_PILLI_CV_latest
Srikanth_PILLI_CV_latest
 
Cloud BioLinux S.Africa
Cloud BioLinux S.AfricaCloud BioLinux S.Africa
Cloud BioLinux S.Africa
 
Building End-user Applications on Embedded Devices with WPE
Building End-user Applications on Embedded Devices with WPEBuilding End-user Applications on Embedded Devices with WPE
Building End-user Applications on Embedded Devices with WPE
 
Mini Project- USB Temperature Logging
Mini Project- USB Temperature LoggingMini Project- USB Temperature Logging
Mini Project- USB Temperature Logging
 
IOT with Drupal 8 - Webinar Hyderabad Drupal Community
IOT with Drupal 8 -  Webinar Hyderabad Drupal CommunityIOT with Drupal 8 -  Webinar Hyderabad Drupal Community
IOT with Drupal 8 - Webinar Hyderabad Drupal Community
 
ERTS 2008 - Using Linux for industrial projects
ERTS 2008 - Using Linux for industrial projectsERTS 2008 - Using Linux for industrial projects
ERTS 2008 - Using Linux for industrial projects
 
F02-Cloud-Cloud BioLinux
F02-Cloud-Cloud BioLinuxF02-Cloud-Cloud BioLinux
F02-Cloud-Cloud BioLinux
 
Documentation
DocumentationDocumentation
Documentation
 
Encode Club Hackathon
Encode Club Hackathon  Encode Club Hackathon
Encode Club Hackathon
 
Why the yocto project for my io t project elc_edinburgh_2018
Why the yocto project for my io t project elc_edinburgh_2018Why the yocto project for my io t project elc_edinburgh_2018
Why the yocto project for my io t project elc_edinburgh_2018
 
Using OSGi for the Realization of Complex Building Management Systems - Peter...
Using OSGi for the Realization of Complex Building Management Systems - Peter...Using OSGi for the Realization of Complex Building Management Systems - Peter...
Using OSGi for the Realization of Complex Building Management Systems - Peter...
 
Wonho Park_20151209
Wonho Park_20151209Wonho Park_20151209
Wonho Park_20151209
 
(WPF + WinForms) * .NET Core = Modern Desktop
(WPF + WinForms) * .NET Core = Modern Desktop(WPF + WinForms) * .NET Core = Modern Desktop
(WPF + WinForms) * .NET Core = Modern Desktop
 
CHPC Workshop Morning Session
CHPC Workshop Morning SessionCHPC Workshop Morning Session
CHPC Workshop Morning Session
 
Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 1
Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 1Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 1
Developing for Industrial IoT with Linux OS on DragonBoard™ 410c: Session 1
 
Continuous Integration with Cloud Foundry Concourse and Docker on OpenPOWER
Continuous Integration with Cloud Foundry Concourse and Docker on OpenPOWERContinuous Integration with Cloud Foundry Concourse and Docker on OpenPOWER
Continuous Integration with Cloud Foundry Concourse and Docker on OpenPOWER
 

Recently uploaded

Mastering Windows 7 A Comprehensive Guide for Power Users .pdf
Mastering Windows 7 A Comprehensive Guide for Power Users .pdfMastering Windows 7 A Comprehensive Guide for Power Users .pdf
Mastering Windows 7 A Comprehensive Guide for Power Users .pdf
mbmh111980
 
JustNaik Solution Deck (stage bus sector)
JustNaik Solution Deck (stage bus sector)JustNaik Solution Deck (stage bus sector)
JustNaik Solution Deck (stage bus sector)
Max Lee
 
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
Alluxio, Inc.
 

Recently uploaded (20)

GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product Updates
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product UpdatesGraphSummit Stockholm - Neo4j - Knowledge Graphs and Product Updates
GraphSummit Stockholm - Neo4j - Knowledge Graphs and Product Updates
 
The Impact of PLM Software on Fashion Production
The Impact of PLM Software on Fashion ProductionThe Impact of PLM Software on Fashion Production
The Impact of PLM Software on Fashion Production
 
How to install and activate eGrabber JobGrabber
How to install and activate eGrabber JobGrabberHow to install and activate eGrabber JobGrabber
How to install and activate eGrabber JobGrabber
 
Mastering Windows 7 A Comprehensive Guide for Power Users .pdf
Mastering Windows 7 A Comprehensive Guide for Power Users .pdfMastering Windows 7 A Comprehensive Guide for Power Users .pdf
Mastering Windows 7 A Comprehensive Guide for Power Users .pdf
 
KLARNA - Language Models and Knowledge Graphs: A Systems Approach
KLARNA -  Language Models and Knowledge Graphs: A Systems ApproachKLARNA -  Language Models and Knowledge Graphs: A Systems Approach
KLARNA - Language Models and Knowledge Graphs: A Systems Approach
 
JustNaik Solution Deck (stage bus sector)
JustNaik Solution Deck (stage bus sector)JustNaik Solution Deck (stage bus sector)
JustNaik Solution Deck (stage bus sector)
 
AI Hackathon.pptx
AI                        Hackathon.pptxAI                        Hackathon.pptx
AI Hackathon.pptx
 
Secure Software Ecosystem Teqnation 2024
Secure Software Ecosystem Teqnation 2024Secure Software Ecosystem Teqnation 2024
Secure Software Ecosystem Teqnation 2024
 
AI/ML Infra Meetup | Reducing Prefill for LLM Serving in RAG
AI/ML Infra Meetup | Reducing Prefill for LLM Serving in RAGAI/ML Infra Meetup | Reducing Prefill for LLM Serving in RAG
AI/ML Infra Meetup | Reducing Prefill for LLM Serving in RAG
 
StrimziCon 2024 - Transition to Apache Kafka on Kubernetes with Strimzi.pdf
StrimziCon 2024 - Transition to Apache Kafka on Kubernetes with Strimzi.pdfStrimziCon 2024 - Transition to Apache Kafka on Kubernetes with Strimzi.pdf
StrimziCon 2024 - Transition to Apache Kafka on Kubernetes with Strimzi.pdf
 
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
 
AI/ML Infra Meetup | Perspective on Deep Learning Framework
AI/ML Infra Meetup | Perspective on Deep Learning FrameworkAI/ML Infra Meetup | Perspective on Deep Learning Framework
AI/ML Infra Meetup | Perspective on Deep Learning Framework
 
Agnieszka Andrzejewska - BIM School Course in Kraków
Agnieszka Andrzejewska - BIM School Course in KrakówAgnieszka Andrzejewska - BIM School Course in Kraków
Agnieszka Andrzejewska - BIM School Course in Kraków
 
Tree in the Forest - Managing Details in BDD Scenarios (live2test 2024)
Tree in the Forest - Managing Details in BDD Scenarios (live2test 2024)Tree in the Forest - Managing Details in BDD Scenarios (live2test 2024)
Tree in the Forest - Managing Details in BDD Scenarios (live2test 2024)
 
IT Software Development Resume, Vaibhav jha 2024
IT Software Development Resume, Vaibhav jha 2024IT Software Development Resume, Vaibhav jha 2024
IT Software Development Resume, Vaibhav jha 2024
 
how-to-download-files-safely-from-the-internet.pdf
how-to-download-files-safely-from-the-internet.pdfhow-to-download-files-safely-from-the-internet.pdf
how-to-download-files-safely-from-the-internet.pdf
 
CompTIA Security+ (Study Notes) for cs.pdf
CompTIA Security+ (Study Notes) for cs.pdfCompTIA Security+ (Study Notes) for cs.pdf
CompTIA Security+ (Study Notes) for cs.pdf
 
Microsoft 365 Copilot; An AI tool changing the world of work _PDF.pdf
Microsoft 365 Copilot; An AI tool changing the world of work _PDF.pdfMicrosoft 365 Copilot; An AI tool changing the world of work _PDF.pdf
Microsoft 365 Copilot; An AI tool changing the world of work _PDF.pdf
 
OpenChain @ LF Japan Executive Briefing - May 2024
OpenChain @ LF Japan Executive Briefing - May 2024OpenChain @ LF Japan Executive Briefing - May 2024
OpenChain @ LF Japan Executive Briefing - May 2024
 
APVP,apvp apvp High quality supplier safe spot transport, 98% purity
APVP,apvp apvp High quality supplier safe spot transport, 98% purityAPVP,apvp apvp High quality supplier safe spot transport, 98% purity
APVP,apvp apvp High quality supplier safe spot transport, 98% purity
 

Volunteer Computing using BOINC

  • 1. Cover from Linux magazine, BOINC
  • 2. Berkeley Open Infrastructure for Network Computing http://bit.ly/boinc_srbiau To get more references visit: Pooyan Mehrparvar
  • 3. i. A brief introduction to volunteer computing & BOINC ii. BOINC’s applications iii. BOINC’s architecture iv. How to join a popular BOINC project v. How to set-up your own BOINC project
  • 4.  Why do we choose this topic?  What is volunteer computing?  What is BOINC?
  • 5.
  • 6.  An established technology that enables ordinary citizens donate their computing resources to one or more "projects".  BOINC is the most widely-used middleware system  a client program runs on the volunteer's computer  BOINC was introduced by David P. Anderson
  • 7.  BOINC is designed to support applications that have large computation requirements, storage requirements, or both. The main requirement of the application is that it be divisible into a large number (thousands or millions) of jobs that can be done independently. Goal: Use all the computers in the world, all the time, to do worthwhile things
  • 8.
  • 9.  Security: BOINC uses code signing to prevent distribution of malicious executables. Each project has a key pair for code signing and the private key kept on network-isolated machine  Virtualization as a solution for client’s security
  • 10.  Project: • An entity that does distributed computing using BOINC.  Application: • A project can include multiple applications • an application includes several programs (for different platforms) and a set of workunits and results  Application versions: • A particular application program version,compiled for a particular platform  Workunit: a computation to be performed. • associated with an application, not with an application version  Result: • an instance of a computation, either unstarted, in progress, or completed. • Each result is associated with a workunit.
  • 11.
  • 12.  Cycle scavenging  BOINC uses computers’s idle cycles of CPU/GPU and other resources to operate (by default)  To avoid high battery consumption/3G charge the BOINC android app runs on A/C power & WiFi connection (by default) Client can run BOINC as: Screensaver (with fancy graphics) Window service (running in the background) Application (displaying results in tabular form)
  • 13.  SETI@home development (1998)  Ifrastructure issues, United devices (2000)  Uited devices falling out, SETI@home failed, hacked(2001)  BOINC was introduced (2002)  Climateprediction.net, SETI@home, LHC@home were implemented on BOINC (2004)  Rosseta@home, Einstein@home, IBM World community Grid, Primegride (2005)  BOINCstats (BAM!), Gridrepublic, BOINC wrapper (2006)  GPU support, Multi-core apps (2008)  BOINC packages for debian (2010)  Apps in virtual machines, vbox wrapper (Server-side) (2011)  Android, Condor/OSG collaboration, Git (2012)  Virtualbox client (2013)  Samsung app (Power sleep), HTC app (Power to give) (2014)
  • 14.  Server: Unix-based operating sytems (Debian based linux is recommended) Microsoft Windows Vista or later (POSIX ready)  Client:  Linux (x86/x64)  Microsoft windows (x86/x64)  MacOS (x86/x64)  Playstation3  Android Virtualization as a solution for cross-platform distributed systems (Virtualbox, Vmware, VirtualPC,...)
  • 15.  FLOPS as a measure for computer performance in scientific fields  (Floating point operations per second)  Some computer systems are unable to to run FLOPS benchamrk  MIPS/MOPS: suitable for database query, word processing, spreadsheets, or to run multiple virtual operating systems
  • 16.  Fastest supercomputer: China's Tianhe-2 running 33.86 petaflops (June 10, 2013)  BOINC: Active: 232,691 volunteers, 718,577 computers. 24-hour average: 8.308 petaFLOPS (December 19, 2014)
  • 17.  General-purpose computing on graphics processing units (GPGPU)  Playstation 4 (ATI) : 18 compute units, 64 cores per unit = 1,152 cores Theorical peak performance = 1.84 TFLOPS  Playstation 3’s CUDA (NVIDIA) is widley used in BOINC projects e.g Folding@home
  • 18.  Computational Science : rosseta@home  Virtual campus supercomputing : univ. of Westminster in London  Desktop grids for business : Slicify project  Integration with HTCondor to allow Globus-based grids to run jobs for BOINC projects : Einstein@OSG
  • 19.
  • 20. Computational science is concerned with constructing mathematical models and quantitative analysis techniques and using computers to analyze and solve scientific problems.
  • 21. BOINC is used in:  Physics, Astrophysics  Mathematics  Biology and medicince (Protein folding)  Distributed sensing  Climate modeling  Games, 3D animation Rendering,...
  • 22. BOINC popular projects:  Physics, Astrophysics: LHC@home, Einstein@home, SETI@home  Mathematics: SZTAKI Desktop Grid, Primegride  Biology and medicince: Folding@home, Rosseta@home  Distributed sensing: Quake Catcher Network  Climate modeling: Climateprediction.net  Games, 3D animation Rendering,... : Chess@home, Enigma@home Find more projects on: http://boinc.berkeley.edu/projects.php
  • 23.
  • 24.  Amino Acids, Proteins, DNA  Protein structure prediction / Modeling proteins structure  Rosseta@home helps to find a cure for:  Alzheimer’s disease  HIV  Malaria  Anthrax  Herpes simplex virus 1
  • 25.
  • 26.  Crowdsourcing is the process of getting work or funding, usually online, from a crowd of people.  Human vs Computer
  • 27.  From the creators of Rosseta@home (Washington Univ.)  Similar to Rosetta@home, Foldit is aimed as a means of discovering native protein structures faster, through a combination of crowdsourcing and distributed computing.  Game with a purpose  In 2011 gamers helped to decipher the crystal structure of M-PMV (virus causing AIDS in monkeys)
  • 29. Challenges while using a BOINC system: How can we depend on clients? Are they permanent? Will they reach the deadlines? Is the produced result valid? How can we trust a BOINC server? How can we trust a BOINC client? How to send jobs to various platforms?
  • 30. Some features of a BOINC system: homogeneous redundancy (sending workunits only to computers of the same platform—e.g.: Win XP SP2 only.) workunit trickling (sending information to the server before the workunit completes) locality scheduling (sending workunits to computers that already have the necessary files and creating work on demand) work distribution based on host parameters (workunits requiring 512 MB of RAM, for example, will only be sent to hosts having at least that much RAM, We send more jobs to multi-core CPUs/GPUs) Double checking: (server sends the same workunit to at least two clients, then it compares the result by validation techniques (bitwise, sample trivial, fuzzy) or a customized validation technique Job scheduling is needed in both server & client: priority between different tasks, reaching deadlines  To avoid cheating, credits are given when after the job is validated by the server
  • 31. In multitasking computer systems, a daemon is a computer program that runs as a background process, rather than being under the direct control of an interactive user  Generator  Transitioner  Feeder  Scheduler  Validator  Assimilator  File deleter
  • 32.
  • 33.  Regiter at Boincstats (BAM)  Choose your project(s)  Join/create a team (optional)  Download the BOINC client (BOINC manager)  Log into software  Immediately the project(s) will be attached  Tasks will be downloaded  Completed tasks will be uploaded to the server  You will gain due to your performance  New job will be downloaded Step by step manual is available at: http://bit.ly/boinc_srbiau
  • 34. BOINC client manager running four tasks (three projects)
  • 35. Project configuration in a nutshell!:  Configure a LAMP (Linux, Apache server, Mysql, Php/Phyton) A virtualbox debian linux is available at BOINC’s website  Develope your own project (mostly done in C++ (GCC), Fortran)  Attach your project url in boincmanager (Client) “your server ip/projectname” (exp: http://192.168.1.80/testproject)  Monitor your project perfomance/administaration at “your server ip/projectname_ops” (exp: http://192.168.1.80/testproject_ops) Step by step video is available at: http://bit.ly/boinc_srbiau
  • 36. BOINC server (left) + BOINC manager client (right) using virualization
  • 37.  Conceived to be used by scientists, not IT professionals  BOINC offers tools for ◦ Creating, starting, stopping and querying projects ◦ Adding new applications, new platforms, … ◦ Creating workunits ◦ Monitoring server performance (All these procedures could be done by UNIX shell commands directly)
  • 38.
  • 39.
  • 40.  A precise evaluation before choosing BOINC as a solution, comparing to other alternatives (JPPF, other cloud or distributed systems)  Fundamental undrestaning of BOINC architecture including it’s daemons, repositories, shell-script commands, etc  Good knowledge and experience of linux environment (shell)  C/C++, Fortran programming skills (GCC, VC++, etc)  Server/network configuration  Security issues
  • 41.  The architecture is centeriliezed in contrast of most Grid systems  Insufficient Interest from Computer Science  Insufficient Interest from scientists  Insufficient Interest from funding agencies  According to official reports volunteers are not increasing  Complexity of server and job submission  Insufficient documentations (obsolete docs)  Rare experiment in web society (You can’t find your answers in BOINC forums, Stack-overflow, etc), Risk of failure