Using Containers to develop and port Salome First experiments and feedback

Similar documents
Travis Cardwell Technical Meeting

Who is Docker and how he can help us? Heino Talvik

Singularity: container formats

Deployment Patterns using Docker and Chef

A Hands on Introduction to Docker

A Prototype Cloud-Based Visualization System for Unidata Applications (Final Report for 2016-Unidata Equipment Awards)

docker & HEP: containerization of applications for development, distribution and preservation

Containers. Pablo F. Ordóñez. October 18, 2018

Docker for HPC? Yes, Singularity! Josef Hrabal

Shifter at CSCS Docker Containers for HPC

UP! TO DOCKER PAAS. Ming

TangeloHub Documentation

NGC CONTAINER. DU _v02 November User Guide

Introduction to Containers. Martin Čuma Center for High Performance Computing University of Utah

Singularity: Containers for High-Performance Computing. Grigory Shamov Nov 21, 2017

CONTAINERIZING JOBS ON THE ACCRE CLUSTER WITH SINGULARITY

DEPLOYMENT MADE EASY!

Infoblox Kubernetes1.0.0 IPAM Plugin

Presented By: Gregory M. Kurtzer HPC Systems Architect Lawrence Berkeley National Laboratory CONTAINERS IN HPC WITH SINGULARITY

Guillimin HPC Users Meeting

An introduction to Docker

DEVOPS COURSE CONTENT

Docker 101 Workshop. Eric Smalling - Solution Architect, Docker

MYR-2017 SimulATOR user manual

LSST software stack and deployment on other architectures. William O Mullane for Andy Connolly with material from Owen Boberg

Docker for Developers

[Docker] Containerization

Getting Started With Containers

High Performance Containers. Convergence of Hyperscale, Big Data and Big Compute

Using DC/OS for Continuous Delivery

Faculté Polytechnique

How to run NoMachine server inside Docker

Midterm Presentation Schedule

USING NGC WITH YOUR NVIDIA TITAN PC

Bioshadock. O. Sallou - IRISA Nettab 2016 CC BY-CA 3.0

OS Virtualization. Linux Containers (LXC)

Salesforce DX Setup Guide

Quick Prototyping+CI with LXC and Puppet

Salesforce DX Setup Guide

Simple custom Linux distributions with LinuxKit. Justin Cormack

Introduction to Containers

Docker for People. A brief and fairly painless introduction to Docker. Friday, November 17 th 11:00-11:45

FEniCS Containers Documentation

Developing and Testing Java Microservices on Docker. Todd Fasullo Dir. Engineering

Singularity CRI User Documentation

what is the problem to be solved

Building CircuitPython

Tensorflow/SyntaxNet. Installation Guide

CNA1699BU Running Docker on your Existing Infrastructure with vsphere Integrated Containers Martijn Baecke Patrick Daigle VMworld 2017 Content: Not fo

Investigating Containers for Future Services and User Application Support

Copyright Heraflux Technologies. Do not redistribute or copy as your own. 1

Downloading and installing Db2 Developer Community Edition on Ubuntu Linux Roger E. Sanders Yujing Ke Published on October 24, 2018

ovirt and Docker Integration

ViryaOS RFC: Secure Containers for Embedded and IoT. A proposal for a new Xen Project sub-project

Container-based virtualization: Docker

SQL Server Administration on Linux 2017

SQL Server inside a docker container. Christophe LAPORTE SQL Server MVP/MCM SQL Saturday 735 Helsinki 2018

VMworld 2017 Content: Not for publication #CNA1699BE CONFIDENTIAL 2

Continuous integration & continuous delivery. COSC345 Software Engineering

Introduction to UNIX. SURF Research Boot Camp April Jeroen Engelberts Consultant Supercomputing

Linux application virtualization with UDS Enterprise. Versión Rev. 1

Full Scalable Media Cloud Solution with Kubernetes Orchestration. Zhenyu Wang, Xin(Owen)Zhang

Shifter and Singularity on Blue Waters

Android meets Docker. Jing Li

DGX-1 DOCKER USER GUIDE Josh Park Senior Solutions Architect Contents created by Jack Han Solutions Architect

Shifter: Fast and consistent HPC workflows using containers

Installation and setup guide of 1.1 demonstrator

Splunk N Box. Splunk Multi-Site Clusters In 20 Minutes or Less! Mohamad Hassan Sales Engineer. 9/25/2017 Washington, DC

Arup Nanda VP, Data Services Priceline.com

Introduction to Docker. Antonis Kalipetis Docker Athens Meetup

3D Sprint. From File to Print. Installation Guide. 3D Sprint Requirements and Installation

Containerizing GPU Applications with Docker for Scaling to the Cloud

Central 1.4. Release Notes

Docker. Master the execution environment of your applications. Aurélien Dumez. Inria Bordeaux - Sud-Ouest. Tuesday, March 24th 2015

How To Manually Install Driver Ubuntu Server On Virtualbox

The instructions in this document are applicable to personal computers running the following Operating Systems:

Fixing the "It works on my machine!" Problem with Docker

Deploy containers on your cluster - A proof of concept

Making Immutable Infrastructure simpler with LinuxKit. Justin Cormack

MaaS Integration for Baremetal Provisioning in Cloudstack

UDS Enterprise Free & Evaluation Edition. Lab UDS Enterprise + VMware vsphere + RDP/XRDP

UDS Enterprise Free & Evaluation Edition. Lab UDS Enterprise + VMware vsphere + RDP/XRDP

Best Practices for Developing & Deploying Java Applications with Docker

BUILDING A GPU-FOCUSED CI SOLUTION

Using Docker in High Performance Computing in OpenPOWER Environment

Contents. Note: pay attention to where you are. Note: Plaintext version. Note: pay attention to where you are... 1 Note: Plaintext version...

IBM Bluemix compute capabilities IBM Corporation

Red Hat Container Development Kit 3.0 Release Notes and Known Issues

Ellipse Support. Contents

Introduction to Containers. Martin Čuma Center for High Performance Computing University of Utah

Geant4 on Azure using Docker containers

STATUS OF PLANS TO USE CONTAINERS IN THE WORLDWIDE LHC COMPUTING GRID

Managing and Deploying GPU Accelerators. ADAC17 - Resource Management Stephane Thiell and Kilian Cavalotti Stanford Research Computing Center

Running Docker* Containers on Intel Xeon Phi Processors

Leapfrog Central 1.2. Technical release notes

LINUX Virtualization. Running other code under LINUX

The following document describes the features that a PC has to have in order to correctly work with Open Technologies' dental scanners.

Red Hat Atomic Details Dockah, Dockah, Dockah! Containerization as a shift of paradigm for the GNU/Linux OS

MAKING CONTAINERS EASIER WITH HPC CONTAINER MAKER. Scott McMillan September 2018

USING DOCKER FOR MXCUBE DEVELOPMENT AT MAX IV

Transcription:

Mathematical Modelling, Simulation and Optimization for Societal Challenges with Scientific Computing Using Containers to develop and port Salome First experiments and feedback C. Trophime, LNCMI CNRS, JUS 2018

Lncmi a French User Magnet Facility Water Cooled Resistive Magnets 31 KA, 24 MW, 36 T Research Areas Metals and Superconductors Magnetism Semiconductors Soft Matter and Magnetoscience Applied Superconductivity 2

HifiMagnet a software tool Chain 3D NL MultiPhysics 70 Billions Elem. 1 T RAM 48 CPUs 3

MSO4SC HPC Cloud Computing service A Portal to access: software catalogue (Hifimagnet), data repository, workflow management pre/post visualization of data (Salome) 4

Containers: a key ingredient 5

What are containers? from freight transport to Sofware: can be (un-)loaded/stacked efficiently can be loaded on ships, trains, trucks,... can be handled without being opened Light Virtual Environnement isolate app from OS ensure app run everywhere share system resources host 6

Docker Workflow Prerequisites 7

Building Docker Image FROM ubuntu:xenial ENV LC_ALL=C.UTF-8 ENV DEBIAN_FRONTEND=noninteractive RUN apt-get -qq update && \ apt-get install -y wget firefox module-init-tools COPY Salome.run /tmp RUN sh /tmp/salome.run -t /opt/salome -d COPY NVIDIA-DRIVER.run /tmp RUN sh./nvidia-driver.run -a -N --ui=none --no-kernel-module CMD ["/bin/bash"] docker build -t trophime/salome:nvidia. 8

Running Docker images Windows Start VxSrv, PowerShell docker run -it --rm -e DISPLAY=$IP:0 \ trophime/salome-8.2.0:nvidia Start XQuartz, xterm: xhost +$ip docker run -it --rm -e DISPLAY $ip:0 \ trophime/salome-8.2.0:nvidia Start a terminal: xhost local:root docker run -ti --rm -e DISPLAY -v /tmp/.x11-unix:/tmp/.x11-unix \ -v $HOME/.Xauthority:/home/feelpp/.Xauthority --env \ QT_X11_NO_MITSHM=1 trophime/salome-8.2.0:nvidia 9

However... Docker containers need to be root to run container alternative use udocker bad performance issue on HPC HPC containers Singularity need to be root only to build container good performance on HPC provided specific network driver loaded within container (aka InfinyBand) same MPI within container and on the host 10

Singularity Containers Same workflow as Docker: sudo singularity build... singularity push/pull... singularity run... Native support for Nvidia Singularity Hub Bootstrap: docker From: debian:jessie %setup mkdir -p $SINGULARITY_ROOTFS/tmp cp path/salome-v8_4_0-univ_public.run $SINGULARITY_ROOTFS/tmp exit 0 %post apt-get update apt-get -y install lsb-release wget curl firefox... sh /tmp/salome-v8_4_0-univ_public.run -t /opt/salome -d 11

Live demos Connect to Cesga HPC (Santiago, Spain) with MSOPortal Start in Salome in Web browser (NoVnc/VirtualGl) You need credentials to log 12

Use of Salome Native Plugin for Hifimagnet from scratch, SalomeTools Lncmi ( 1 person) Virtualisation VM (Vagrant) Master II Univ. Strasbourg Docker Master II Univ. Strasbourg Singularity Lncmi, Cemosis, Mso4sc (Cesga HPC,...) 13

Conclusions & Perspectives Salome deployement: easier (since maintenance limited to an OS) custom to your need available on all platforms (!! Graphic Cards!!) Need for Official containers Docker/Singularity Registry Windows store (WSL aka LXC container) Go for a Salome container a la CMB (KitWare), CAELinux 14

Critics Installation simpler than in the past still lot of questions (see forum) several executables with different modules no explicit nor standard way to rebuild modules Merging the installation process Moving to Ubuntu/Debian package Using containers to standardize Using Salome as a black-box Keeping containers as light as possible 15

Thank you for your attention! Contact information: Scientific Coordinator: Zoltán Horváth (SZE) horvathz@math.sze.hu Project Coordinator: Javi Nieto (ATOS) javi.nieto@atos.net Website: www.mso4sc.eu Grant agreement No. 731063

To go further Docker Docker Nvidia Docker with OpenGl (MacOs X) Singularity SRegistry (CLI) Windows Subsystem Linux (Windows 10) https://blogs.msdn.microsoft.com/commandline/ Feelpp HiFiMagnet 17

Benchmarks for 8.4.0 Meshing a Cube with Hex. (test_box.py) Debian/Testing CPU: i7-4790 CPU @ 3.60GHz RAM: 32 Go Native Docker Nvidia Docker novnc Singularity Compute 24 s 8725 MiB 23.7 s 8666 MiB 22.0 s 8698.0 MiB 23.5s 8679.7 MiB Display 86.7 s 11105 MiB 83.1 s 10623.4 MiB 68.0s 11009.8 MiB 73.4 s 11067.7 MiB Mesh: 300x300x300 Nvidia Quadro K2200 18

Benchmarks for 8.4.0 Meshing a Cube with Hex. (test_box.py) Windows 10 Pro Build 1709 Native (8.3.0) Docker Nvidia Docker novnc WSL CPU: i7-6820hq @ 2.70GHz RAM: 16 Go Mesh: 100x100x100 MobaXTerm 10.5 IntelHD 530 Quadro M1000M Compute 1.5 s 1.1 s 12.0 s 390.1 MiB 607.5 MiB 458.4 MiB Display 4.5 s 3.6 s 3.8 s 439.7 MiB 724.4 MiB 526.5 MiB 19

Benchmarks for 8.4.0 Meshing a Cube with Hex. (test_box.py) Windows 10 Pro Build 1709 Native (8.3.0) CPU: 7-6700HQ CPU @ 2.60GHz RAM: 32 Go Mesh: 100x100x100 Docker Nvidia (8.3.0) Docker novnc WSL SMDS_MemoryLimit disabled MobaXTerm 10.5 VxSrv 1.19.6.2 IntelHD 530 GeForce GTX 960M Compute 2.2 s 123.6 MiB 1.9 s 1.8 s 608.4 MiB 606.5 MiB 233.6 s 6722.9 MiB 2.0 s 451.0 MiB Display 6.7 s 407.7 MiB 6.3 s 4.4 s 702.1 MiB 723.1Mi B 82.6 s 8036.0 MiB 4.8 s 520.7 MiB 20

Known issues 8.3.0: Linux: Xorg 1.17 at least Windows: VxSrv or MobaXterm MacOs X: XQuartz 2.7.10 8.4.0: Linux: Windows: MobaXterm 10.5 with Nvidia MacOs X: OpenGL support with remote rendering Singularity only available for Unix NoVNC container :!! memory allocated!! Windows WSL: SMDS_Memorylimit may induce perf issue 21