SlideShare a Scribd company logo
1 of 46
Download to read offline
Finding a Theory of the Universe with
Docker and Volunteer Computers
Marius Millea
Lagrange Postdoctoral Fellow
Institut Lagrange de Paris
About Me
• I'm a cosmologist
• ...but I've always been really into
computers
• I work on analyzing data from a
satellite called Planck
• I'm the main developer at
Cosmology@Home
Thanks to...
Ben Wandelt Rom Walton Cam Boehmer
Original creator of
Cosmology@Home
A BOINC developer Introduced me to
Docker
...and many others
• Cosmology@Home is a volunteer-based computer cluster
Active computers:
(as of July 2015)
• Our aim is to better understand our universe
(in particular the mass of the neutrino particle)
Server
Volunteers
Possible universes
Outline
• Measuring the mass of the neutrino
particle with Planck
• Cosmology@Home and how Docker has
helped
• Future Docker use at Cosmology@Home
and in the field of physics in general
Why the science?
• Show you a definite
example of the type of
calculations we do
• Give you a sense of their
ever-changing nature
“For the discovery of neutrino oscillations, which
shows that neutrinos have mass”
So what is the mass?
neutrinos
Created in nuclear
power plants
Created in the sun
Created by the big bang
nasa.gov
wikipedia.org
Known particles
●
Neutrinos interact very weakly
●
Makes measuring their mass difficult
Neutrinos emitted from the sun,
as seen through the earth Super-Kamiokande
Source Detector
DetectorSourceBacklight
The History of the Universe (backwards)
The History of the Universe (forwards)
The Planck satellite
Cold (-270.3999˚C) Hot (-270.4001˚C)
Cold (-270.3999˚C) Hot (-270.4001˚C)
DetectorSourceBacklight
Summary thus far
• We measure the distortion of the CMB due
to neutrinos released from the big bang to
infer the mass of the neutrino particle
• Our volunteer computers simulate
different hypothetical universes with
different neutrino masses to tell us how
much distortion we would expect, then we
compare to data
Outline
• Measuring the mass of the neutrino
particle with Planck
• Cosmology@Home and how Docker has
helped
• Future Docker use at Cosmology@Home
and in the field of physics in general
From the user's POV
z
http://www.cosmologyathome.org
https://boinc.berkeley.edu
From our POV
Regular apps
• Compile executable for each platform
• Either statically link or include all necessary libraries
• Link against the BOINC libraries and manage user
requests for suspend/checkpoint/resume, etc…
• BOINC takes care of sending it each host, running it, etc...
Cosmology@Home computers
VM apps
• Just create one VM image, works on all platforms
• BOINC handles suspend/checkpoint/resume
• Still some downsides
– Its clunky to create a VM image
– New app version, user has to redownload whole thing?
Cosmology@Home internet connections
Docker apps
+Debian base image (~40Mb compressed)
+our app (~3Mb compressed)
BOINC
BOINC Virtualbox wrapper
“boinc2docker” ISO
Docker container
handles pause/resume
generally “BOINC things...”
lightly modified to interact with BOINC
Persistence
Logging
Startup script
boot2docker ISO modifications
#!/bin/sh
/etc/init.d/docker stop
tar cf /root/scratch/boinc2docker_persistence.tar /var/lib/docker/*
/etc/init.d/docker start
#!/bin/sh
docker inspect $IMAGE || { docker pull $IMAGE && save_docker.sh; }
docker run --rm -v /root/shared:/root/shared $IMAGE
via Virtualbox guest-logging, logs are uploaded to our DB
What running jobs now looks like
• Create the Docker image which runs my
calculation and push to Docker hub
docker build -t cosmohome/mytheory .
docker push cosmohome/mytheory
...
FROM debian:wheezy
RUN apt-get update && 
apt-get -y install libgfortran3 libgomp1 && 
rm -rf /var/lib/apt/lists/*
COPY ["camb", "HighLExtrapTemplate_lenspotentialCls.dat", "/root/"]
What running jobs now looks like
• Submit workunit on Cosmology@Home
server pointing to my image
./create_work --app boinc2docker 
boinc_app 
params
e.g. neutrino mass = X...
A short script like you saw
before which does a
docker run cosmohome/mytheory
End result
• Its easy!
• I can spend my time being a physicist,
not a programmer
Previously
Planck
Outline
• Measuring the mass of the neutrino
particle with Planck
• Cosmology@Home and how Docker has
helped
• Future Docker use at Cosmology@Home
and in the field of physics in general
Docker and volunteer computing
“BOINC is the #5
super-computer in
the world. What if
it ran Docker?”
4
2
Docker and volunteer computing
Cosmology@Home:
• “Higher fidelity” simulations of the universe
Generally:
• An “IPython Parallel”-like interface to BOINC
• “Service to scientists”
• Swarm, Tutum..?
• From the top: the most computer savvy
physicists know of and may use Docker
• From the grassroots: more work needed
– Good news: physicists develop, ship, and
modify code
– Docker and MPI (e.g. see “Shifter” at NERSC)
Docker and scientific computing
Summary
• Cosmology@Home, a cluster of volunteer
computers, now runs Docker
• Docker allows us to spend our time being
physicists
• If anyone is looking for open source
projects to contribute to, we welcome
helpers, find me or our
github.com/marius311/cosmohome
Thank you!
Marius Millea
mariusmillea@gmail.com

More Related Content

What's hot

Introduction to docker
Introduction to dockerIntroduction to docker
Introduction to docker
John Willis
 
Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013
Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013
Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013
dotCloud
 
Docker in pratice -chenyifei
Docker in pratice -chenyifeiDocker in pratice -chenyifei
Docker in pratice -chenyifei
dotCloud
 
Building a Docker Swarm cluster on ARM by Dieter Reuter and Stefan Scherer
Building a Docker Swarm cluster on ARM by Dieter Reuter and Stefan Scherer Building a Docker Swarm cluster on ARM by Dieter Reuter and Stefan Scherer
Building a Docker Swarm cluster on ARM by Dieter Reuter and Stefan Scherer
Docker, Inc.
 
Intro Docker october 2013
Intro Docker october 2013Intro Docker october 2013
Intro Docker october 2013
dotCloud
 

What's hot (20)

Docker intro
Docker introDocker intro
Docker intro
 
Docker introduction
Docker introductionDocker introduction
Docker introduction
 
PuppetConf 2017: What’s in the Box?!- Leveraging Puppet Enterprise & Docker- ...
PuppetConf 2017: What’s in the Box?!- Leveraging Puppet Enterprise & Docker- ...PuppetConf 2017: What’s in the Box?!- Leveraging Puppet Enterprise & Docker- ...
PuppetConf 2017: What’s in the Box?!- Leveraging Puppet Enterprise & Docker- ...
 
Introduction to docker
Introduction to dockerIntroduction to docker
Introduction to docker
 
Docker Introduction
Docker IntroductionDocker Introduction
Docker Introduction
 
Getting started with Docker
Getting started with DockerGetting started with Docker
Getting started with Docker
 
From Docker Swarm to OCCS and Wercker: Live-hacking at Oracle CODE Mexico 2017
From Docker Swarm to OCCS and Wercker: Live-hacking at Oracle CODE Mexico 2017From Docker Swarm to OCCS and Wercker: Live-hacking at Oracle CODE Mexico 2017
From Docker Swarm to OCCS and Wercker: Live-hacking at Oracle CODE Mexico 2017
 
Docker Introduction
Docker IntroductionDocker Introduction
Docker Introduction
 
Introduction To Docker
Introduction To DockerIntroduction To Docker
Introduction To Docker
 
Discovering Docker Volume Plugins and Apps using VirtualBox
Discovering Docker Volume Plugins and Apps using VirtualBoxDiscovering Docker Volume Plugins and Apps using VirtualBox
Discovering Docker Volume Plugins and Apps using VirtualBox
 
Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013
Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013
Write Once and REALLY Run Anywhere | OpenStack Summit HK 2013
 
Introduction to docker
Introduction to dockerIntroduction to docker
Introduction to docker
 
Docker in pratice -chenyifei
Docker in pratice -chenyifeiDocker in pratice -chenyifei
Docker in pratice -chenyifei
 
Dockerizing your applications - Docker workshop @Twitter
Dockerizing your applications - Docker workshop @TwitterDockerizing your applications - Docker workshop @Twitter
Dockerizing your applications - Docker workshop @Twitter
 
Building a Docker Swarm cluster on ARM by Dieter Reuter and Stefan Scherer
Building a Docker Swarm cluster on ARM by Dieter Reuter and Stefan Scherer Building a Docker Swarm cluster on ARM by Dieter Reuter and Stefan Scherer
Building a Docker Swarm cluster on ARM by Dieter Reuter and Stefan Scherer
 
Introduction to Docker - What is it and how is it compared to VM's
Introduction to Docker - What is it and how is it compared to VM'sIntroduction to Docker - What is it and how is it compared to VM's
Introduction to Docker - What is it and how is it compared to VM's
 
DockerCon EU 2015: Day 1 General Session
DockerCon EU 2015: Day 1 General SessionDockerCon EU 2015: Day 1 General Session
DockerCon EU 2015: Day 1 General Session
 
Docker introduction
Docker introductionDocker introduction
Docker introduction
 
Intro Docker october 2013
Intro Docker october 2013Intro Docker october 2013
Intro Docker october 2013
 
Docker
DockerDocker
Docker
 

Viewers also liked

DockerCon EU 2015: Production Ready Containers from IBM and Docker
DockerCon EU 2015: Production Ready Containers from IBM and DockerDockerCon EU 2015: Production Ready Containers from IBM and Docker
DockerCon EU 2015: Production Ready Containers from IBM and Docker
Docker, Inc.
 
DockerCon EU 2015: Continuous Integration with Jenkins, Docker and Compose
DockerCon EU 2015: Continuous Integration with Jenkins, Docker and ComposeDockerCon EU 2015: Continuous Integration with Jenkins, Docker and Compose
DockerCon EU 2015: Continuous Integration with Jenkins, Docker and Compose
Docker, Inc.
 
Docker Hub: Past, Present and Future by Ken Cochrane & BC Wong
Docker Hub: Past, Present and Future by Ken Cochrane & BC WongDocker Hub: Past, Present and Future by Ken Cochrane & BC Wong
Docker Hub: Past, Present and Future by Ken Cochrane & BC Wong
Docker, Inc.
 
DockerCon Recap - Online Meetup by Ben Firshman
DockerCon Recap - Online Meetup by Ben FirshmanDockerCon Recap - Online Meetup by Ben Firshman
DockerCon Recap - Online Meetup by Ben Firshman
Docker, Inc.
 
Dockerfile Basics Workshop #1
Dockerfile Basics Workshop #1Dockerfile Basics Workshop #1
Dockerfile Basics Workshop #1
Docker, Inc.
 

Viewers also liked (20)

DockerCon EU 2015: Official Repos and Project Nautilus
DockerCon EU 2015: Official Repos and Project NautilusDockerCon EU 2015: Official Repos and Project Nautilus
DockerCon EU 2015: Official Repos and Project Nautilus
 
Live migrating a container: pros, cons and gotchas
Live migrating a container: pros, cons and gotchasLive migrating a container: pros, cons and gotchas
Live migrating a container: pros, cons and gotchas
 
DockerCon EU 2015: Using Docker and SDN for telco-grade applications
DockerCon EU 2015: Using Docker and SDN for telco-grade applicationsDockerCon EU 2015: Using Docker and SDN for telco-grade applications
DockerCon EU 2015: Using Docker and SDN for telco-grade applications
 
DockerCon EU 2015: Production Ready Containers from IBM and Docker
DockerCon EU 2015: Production Ready Containers from IBM and DockerDockerCon EU 2015: Production Ready Containers from IBM and Docker
DockerCon EU 2015: Production Ready Containers from IBM and Docker
 
Kernel load-balancing for Docker containers using IPVS
Kernel load-balancing for Docker containers using IPVSKernel load-balancing for Docker containers using IPVS
Kernel load-balancing for Docker containers using IPVS
 
Docker Online Meetup #22: Docker Networking
Docker Online Meetup #22: Docker NetworkingDocker Online Meetup #22: Docker Networking
Docker Online Meetup #22: Docker Networking
 
Cgroups, namespaces and beyond: what are containers made from?
Cgroups, namespaces and beyond: what are containers made from?Cgroups, namespaces and beyond: what are containers made from?
Cgroups, namespaces and beyond: what are containers made from?
 
Build, Publish, Deploy and Test Docker images and containers with Jenkins Wor...
Build, Publish, Deploy and Test Docker images and containers with Jenkins Wor...Build, Publish, Deploy and Test Docker images and containers with Jenkins Wor...
Build, Publish, Deploy and Test Docker images and containers with Jenkins Wor...
 
DockerCon EU 2015: Continuous Integration with Jenkins, Docker and Compose
DockerCon EU 2015: Continuous Integration with Jenkins, Docker and ComposeDockerCon EU 2015: Continuous Integration with Jenkins, Docker and Compose
DockerCon EU 2015: Continuous Integration with Jenkins, Docker and Compose
 
Docker Hub: Past, Present and Future by Ken Cochrane & BC Wong
Docker Hub: Past, Present and Future by Ken Cochrane & BC WongDocker Hub: Past, Present and Future by Ken Cochrane & BC Wong
Docker Hub: Past, Present and Future by Ken Cochrane & BC Wong
 
DockerCon EU 2015: Compute as an Interruption Forget the Servers
DockerCon EU 2015: Compute as an Interruption Forget the ServersDockerCon EU 2015: Compute as an Interruption Forget the Servers
DockerCon EU 2015: Compute as an Interruption Forget the Servers
 
Mobycraft:Docker in 8-bit (Meetup at Docker HQ 4/7)
Mobycraft:Docker in 8-bit (Meetup at Docker HQ 4/7)Mobycraft:Docker in 8-bit (Meetup at Docker HQ 4/7)
Mobycraft:Docker in 8-bit (Meetup at Docker HQ 4/7)
 
Mobycraft - Docker in 8-bit by Aditya Gupta
Mobycraft - Docker in 8-bit by Aditya Gupta Mobycraft - Docker in 8-bit by Aditya Gupta
Mobycraft - Docker in 8-bit by Aditya Gupta
 
The Future of Hardware-Backed Keys
The Future of Hardware-Backed KeysThe Future of Hardware-Backed Keys
The Future of Hardware-Backed Keys
 
Containerize All the (Multi-Platform) Things! by Phil Estes
Containerize All the (Multi-Platform) Things! by Phil EstesContainerize All the (Multi-Platform) Things! by Phil Estes
Containerize All the (Multi-Platform) Things! by Phil Estes
 
Monitoring Containers at New Relic by Sean Kane
Monitoring Containers at New Relic by Sean Kane Monitoring Containers at New Relic by Sean Kane
Monitoring Containers at New Relic by Sean Kane
 
DockerCon Recap - Online Meetup by Ben Firshman
DockerCon Recap - Online Meetup by Ben FirshmanDockerCon Recap - Online Meetup by Ben Firshman
DockerCon Recap - Online Meetup by Ben Firshman
 
Autoscaling Docker Containers by Konstantinos Faliagkas, Docker Birthday #3 A...
Autoscaling Docker Containers by Konstantinos Faliagkas, Docker Birthday #3 A...Autoscaling Docker Containers by Konstantinos Faliagkas, Docker Birthday #3 A...
Autoscaling Docker Containers by Konstantinos Faliagkas, Docker Birthday #3 A...
 
DockerCon SF 2015: Education for a digital world
DockerCon SF 2015: Education for a digital worldDockerCon SF 2015: Education for a digital world
DockerCon SF 2015: Education for a digital world
 
Dockerfile Basics Workshop #1
Dockerfile Basics Workshop #1Dockerfile Basics Workshop #1
Dockerfile Basics Workshop #1
 

Similar to DockerCon EU 2015: Finding a Theory of the Universe with Docker and Volunteer Computers

Similar to DockerCon EU 2015: Finding a Theory of the Universe with Docker and Volunteer Computers (20)

Containerization using docker and its applications
Containerization using docker and its applicationsContainerization using docker and its applications
Containerization using docker and its applications
 
Containerization using docker and its applications
Containerization using docker and its applicationsContainerization using docker and its applications
Containerization using docker and its applications
 
Ansible Oxford - Cows & Containers
Ansible Oxford - Cows & ContainersAnsible Oxford - Cows & Containers
Ansible Oxford - Cows & Containers
 
The Container Revolution: Reflections after the first decade
The Container Revolution: Reflections after the first decadeThe Container Revolution: Reflections after the first decade
The Container Revolution: Reflections after the first decade
 
Supercharge ml using docker
Supercharge ml using dockerSupercharge ml using docker
Supercharge ml using docker
 
Java Developer Intro to Environment Management with Vagrant, Puppet, and Dock...
Java Developer Intro to Environment Management with Vagrant, Puppet, and Dock...Java Developer Intro to Environment Management with Vagrant, Puppet, and Dock...
Java Developer Intro to Environment Management with Vagrant, Puppet, and Dock...
 
mpandya_poster
mpandya_postermpandya_poster
mpandya_poster
 
Java developer intro to environment management with vagrant puppet and docker
Java developer intro to environment management with vagrant puppet and dockerJava developer intro to environment management with vagrant puppet and docker
Java developer intro to environment management with vagrant puppet and docker
 
Using Minikube for Node.js development
Using Minikube for Node.js developmentUsing Minikube for Node.js development
Using Minikube for Node.js development
 
Docker 2014
Docker 2014Docker 2014
Docker 2014
 
141204 upload
141204 upload141204 upload
141204 upload
 
Docker Introduction
Docker IntroductionDocker Introduction
Docker Introduction
 
Docker in development
Docker in developmentDocker in development
Docker in development
 
Introduction to Docker
Introduction to DockerIntroduction to Docker
Introduction to Docker
 
Docker on a Diet
Docker on a DietDocker on a Diet
Docker on a Diet
 
Quest overview
Quest overviewQuest overview
Quest overview
 
Docker interview Questions-1.pdf
Docker interview Questions-1.pdfDocker interview Questions-1.pdf
Docker interview Questions-1.pdf
 
2016 - Orchestrating multi-container apps: How I came to love the pod
2016 - Orchestrating multi-container apps: How I came to love the pod2016 - Orchestrating multi-container apps: How I came to love the pod
2016 - Orchestrating multi-container apps: How I came to love the pod
 
eZ Publish 5: from zero to automated deployment (and no regressions!) in one ...
eZ Publish 5: from zero to automated deployment (and no regressions!) in one ...eZ Publish 5: from zero to automated deployment (and no regressions!) in one ...
eZ Publish 5: from zero to automated deployment (and no regressions!) in one ...
 
Kube 101
Kube 101Kube 101
Kube 101
 

More from Docker, Inc.

Build & Deploy Multi-Container Applications to AWS
Build & Deploy Multi-Container Applications to AWSBuild & Deploy Multi-Container Applications to AWS
Build & Deploy Multi-Container Applications to AWS
Docker, Inc.
 
Build & Deploy Multi-Container Applications to AWS
Build & Deploy Multi-Container Applications to AWSBuild & Deploy Multi-Container Applications to AWS
Build & Deploy Multi-Container Applications to AWS
Docker, Inc.
 

More from Docker, Inc. (20)

Containerize Your Game Server for the Best Multiplayer Experience
Containerize Your Game Server for the Best Multiplayer Experience Containerize Your Game Server for the Best Multiplayer Experience
Containerize Your Game Server for the Best Multiplayer Experience
 
How to Improve Your Image Builds Using Advance Docker Build
How to Improve Your Image Builds Using Advance Docker BuildHow to Improve Your Image Builds Using Advance Docker Build
How to Improve Your Image Builds Using Advance Docker Build
 
Build & Deploy Multi-Container Applications to AWS
Build & Deploy Multi-Container Applications to AWSBuild & Deploy Multi-Container Applications to AWS
Build & Deploy Multi-Container Applications to AWS
 
Securing Your Containerized Applications with NGINX
Securing Your Containerized Applications with NGINXSecuring Your Containerized Applications with NGINX
Securing Your Containerized Applications with NGINX
 
How To Build and Run Node Apps with Docker and Compose
How To Build and Run Node Apps with Docker and ComposeHow To Build and Run Node Apps with Docker and Compose
How To Build and Run Node Apps with Docker and Compose
 
Hands-on Helm
Hands-on Helm Hands-on Helm
Hands-on Helm
 
Distributed Deep Learning with Docker at Salesforce
Distributed Deep Learning with Docker at SalesforceDistributed Deep Learning with Docker at Salesforce
Distributed Deep Learning with Docker at Salesforce
 
The First 10M Pulls: Building The Official Curl Image for Docker Hub
The First 10M Pulls: Building The Official Curl Image for Docker HubThe First 10M Pulls: Building The Official Curl Image for Docker Hub
The First 10M Pulls: Building The Official Curl Image for Docker Hub
 
Monitoring in a Microservices World
Monitoring in a Microservices WorldMonitoring in a Microservices World
Monitoring in a Microservices World
 
COVID-19 in Italy: How Docker is Helping the Biggest Italian IT Company Conti...
COVID-19 in Italy: How Docker is Helping the Biggest Italian IT Company Conti...COVID-19 in Italy: How Docker is Helping the Biggest Italian IT Company Conti...
COVID-19 in Italy: How Docker is Helping the Biggest Italian IT Company Conti...
 
Predicting Space Weather with Docker
Predicting Space Weather with DockerPredicting Space Weather with Docker
Predicting Space Weather with Docker
 
Become a Docker Power User With Microsoft Visual Studio Code
Become a Docker Power User With Microsoft Visual Studio CodeBecome a Docker Power User With Microsoft Visual Studio Code
Become a Docker Power User With Microsoft Visual Studio Code
 
How to Use Mirroring and Caching to Optimize your Container Registry
How to Use Mirroring and Caching to Optimize your Container RegistryHow to Use Mirroring and Caching to Optimize your Container Registry
How to Use Mirroring and Caching to Optimize your Container Registry
 
Monolithic to Microservices + Docker = SDLC on Steroids!
Monolithic to Microservices + Docker = SDLC on Steroids!Monolithic to Microservices + Docker = SDLC on Steroids!
Monolithic to Microservices + Docker = SDLC on Steroids!
 
Kubernetes at Datadog Scale
Kubernetes at Datadog ScaleKubernetes at Datadog Scale
Kubernetes at Datadog Scale
 
Labels, Labels, Labels
Labels, Labels, Labels Labels, Labels, Labels
Labels, Labels, Labels
 
Using Docker Hub at Scale to Support Micro Focus' Delivery and Deployment Model
Using Docker Hub at Scale to Support Micro Focus' Delivery and Deployment ModelUsing Docker Hub at Scale to Support Micro Focus' Delivery and Deployment Model
Using Docker Hub at Scale to Support Micro Focus' Delivery and Deployment Model
 
Build & Deploy Multi-Container Applications to AWS
Build & Deploy Multi-Container Applications to AWSBuild & Deploy Multi-Container Applications to AWS
Build & Deploy Multi-Container Applications to AWS
 
From Fortran on the Desktop to Kubernetes in the Cloud: A Windows Migration S...
From Fortran on the Desktop to Kubernetes in the Cloud: A Windows Migration S...From Fortran on the Desktop to Kubernetes in the Cloud: A Windows Migration S...
From Fortran on the Desktop to Kubernetes in the Cloud: A Windows Migration S...
 
Developing with Docker for the Arm Architecture
Developing with Docker for the Arm ArchitectureDeveloping with Docker for the Arm Architecture
Developing with Docker for the Arm Architecture
 

Recently uploaded

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Recently uploaded (20)

Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 

DockerCon EU 2015: Finding a Theory of the Universe with Docker and Volunteer Computers

  • 1. Finding a Theory of the Universe with Docker and Volunteer Computers Marius Millea Lagrange Postdoctoral Fellow Institut Lagrange de Paris
  • 2. About Me • I'm a cosmologist • ...but I've always been really into computers • I work on analyzing data from a satellite called Planck • I'm the main developer at Cosmology@Home
  • 3. Thanks to... Ben Wandelt Rom Walton Cam Boehmer Original creator of Cosmology@Home A BOINC developer Introduced me to Docker ...and many others
  • 4. • Cosmology@Home is a volunteer-based computer cluster Active computers: (as of July 2015)
  • 5. • Our aim is to better understand our universe (in particular the mass of the neutrino particle) Server Volunteers Possible universes
  • 6. Outline • Measuring the mass of the neutrino particle with Planck • Cosmology@Home and how Docker has helped • Future Docker use at Cosmology@Home and in the field of physics in general
  • 7. Why the science? • Show you a definite example of the type of calculations we do • Give you a sense of their ever-changing nature
  • 8. “For the discovery of neutrino oscillations, which shows that neutrinos have mass” So what is the mass?
  • 9. neutrinos Created in nuclear power plants Created in the sun Created by the big bang nasa.gov wikipedia.org Known particles
  • 10. ● Neutrinos interact very weakly ● Makes measuring their mass difficult Neutrinos emitted from the sun, as seen through the earth Super-Kamiokande
  • 12. The History of the Universe (backwards)
  • 13. The History of the Universe (forwards)
  • 15.
  • 16.
  • 17.
  • 18. Cold (-270.3999˚C) Hot (-270.4001˚C)
  • 19. Cold (-270.3999˚C) Hot (-270.4001˚C)
  • 21. Summary thus far • We measure the distortion of the CMB due to neutrinos released from the big bang to infer the mass of the neutrino particle • Our volunteer computers simulate different hypothetical universes with different neutrino masses to tell us how much distortion we would expect, then we compare to data
  • 22. Outline • Measuring the mass of the neutrino particle with Planck • Cosmology@Home and how Docker has helped • Future Docker use at Cosmology@Home and in the field of physics in general
  • 26.
  • 27.
  • 28.
  • 29.
  • 31. Regular apps • Compile executable for each platform • Either statically link or include all necessary libraries • Link against the BOINC libraries and manage user requests for suspend/checkpoint/resume, etc… • BOINC takes care of sending it each host, running it, etc...
  • 33. VM apps • Just create one VM image, works on all platforms • BOINC handles suspend/checkpoint/resume • Still some downsides – Its clunky to create a VM image – New app version, user has to redownload whole thing?
  • 35. Docker apps +Debian base image (~40Mb compressed) +our app (~3Mb compressed) BOINC BOINC Virtualbox wrapper “boinc2docker” ISO Docker container handles pause/resume generally “BOINC things...” lightly modified to interact with BOINC
  • 36. Persistence Logging Startup script boot2docker ISO modifications #!/bin/sh /etc/init.d/docker stop tar cf /root/scratch/boinc2docker_persistence.tar /var/lib/docker/* /etc/init.d/docker start #!/bin/sh docker inspect $IMAGE || { docker pull $IMAGE && save_docker.sh; } docker run --rm -v /root/shared:/root/shared $IMAGE via Virtualbox guest-logging, logs are uploaded to our DB
  • 37. What running jobs now looks like • Create the Docker image which runs my calculation and push to Docker hub docker build -t cosmohome/mytheory . docker push cosmohome/mytheory ... FROM debian:wheezy RUN apt-get update && apt-get -y install libgfortran3 libgomp1 && rm -rf /var/lib/apt/lists/* COPY ["camb", "HighLExtrapTemplate_lenspotentialCls.dat", "/root/"]
  • 38. What running jobs now looks like • Submit workunit on Cosmology@Home server pointing to my image ./create_work --app boinc2docker boinc_app params e.g. neutrino mass = X... A short script like you saw before which does a docker run cosmohome/mytheory
  • 39. End result • Its easy! • I can spend my time being a physicist, not a programmer Previously Planck
  • 40. Outline • Measuring the mass of the neutrino particle with Planck • Cosmology@Home and how Docker has helped • Future Docker use at Cosmology@Home and in the field of physics in general
  • 41. Docker and volunteer computing
  • 42. “BOINC is the #5 super-computer in the world. What if it ran Docker?” 4 2
  • 43. Docker and volunteer computing Cosmology@Home: • “Higher fidelity” simulations of the universe Generally: • An “IPython Parallel”-like interface to BOINC • “Service to scientists” • Swarm, Tutum..?
  • 44. • From the top: the most computer savvy physicists know of and may use Docker • From the grassroots: more work needed – Good news: physicists develop, ship, and modify code – Docker and MPI (e.g. see “Shifter” at NERSC) Docker and scientific computing
  • 45. Summary • Cosmology@Home, a cluster of volunteer computers, now runs Docker • Docker allows us to spend our time being physicists • If anyone is looking for open source projects to contribute to, we welcome helpers, find me or our github.com/marius311/cosmohome