Import from image tags that are not subject to change
Reference specific software releases or commit hashes
15 of 18
Container Image Development Practices...
Can differ significantly from practices of IT industry
For IT, there is a strong incentive to have small, single-purpose images
IT industry uses containers in cloud
On OSG and HPC, it is a different story
Images can be large, and it does not affect the amount of IO
On OSG, images are fed unpacked over CVMFS, on-demand
On HPC, a high-bandwidth connection serves parts of image on-demand
For me, all software components meant to work together are packaged together in an image
Images are large: ~5 GiB
Only storage quotas apply pressure to keep images from being much larger
In this usage, container images are less about providing appliances, and more about providing a cohesive simulation/reconstruction environment
16 of 18
Singularity on OSG
OSG scripts generate unpacked singularity images served over CVMFS
CVMFS offers aggressive caching
Docker import can lose some environment information
In this case, it is possible to copy proper image files to nodes, but in this case image size matters!
Using Singularity limits jobs to a subset of grid resources
Difficulties with OSG image distribution ultimately has discouraged use
My work has instead grown to favor local HPC resources (namely Bebop)
17 of 18
Singularity on Bebop
New Cray CS400 cluster at ANL
Shockingly easy!
Load Singularity module
Pull Docker Hub or shub image into local image file
Load image file from nodes over high-speed link
“Legacy chain” and “Evochain” run out of the box on Broadwell nodes
Not so much on KNL nodes: Java apps raise exceptions over insufficient resources
J. Taylor Childers discovered that it is max thread limits that prevent Java GC threads from spawning
18 of 18
Summary
The power of containers can be summed up in the following fact:
Our entire simulation and reconstruction was converted over from running on OSG to a brand new HPC cluster in about 2 hours.
This kind of portability can be a very powerful collaboration tool
E.g., people with little to no knowledge of particular simulation/reconstruction software could evaluate the performance of a detector design and/or reconstruction procedure for their physics case