Skip to main content
SHARE
Publication

Balancing Performance and Portability with Containers in HPC: An OpenSHMEM Example...

by Thomas J Naughton Iii, Lawrence Sorrillo, Adam B Simpson, Neena Imam
Publication Type
Conference Paper
Journal Name
Lecture Notes in Computer Science
Publication Date
Page Numbers
130 to 142
Volume
10679
Conference Name
OpenSHMEM 2017: Fourth workshop on OpenSHMEM and Related Technologies
Conference Location
Annapolis, Maryland, United States of America
Conference Sponsor
DOD, ORNL, Cray, NVidia, Mellanox, ARM, HP
Conference Date
-

There is a growing interest in using Linux containers to streamline software development and application deployment. A container enables the user to bundle the salient elements of the software stack from an application’s perspective. In this paper, we discuss initial experiences in using the Open MPI implementation of OpenSHMEM with containers on HPC resources. We provide a brief overview of two container runtimes, Docker & Singularity, highlighting elements that are of interest for HPC users. The Docker platform offers a rich set of services that are widely used in enterprise environments, whereas Singularity is an emerging container runtime that is specifically written for use on HPC systems. We describe our procedure for container assembly and deployment that strives to maintain the portability of the container-based application. We show performance results for the Graph500 benchmark running along the typical continuum of development testbed up to full production supercomputer (ORNL’s Titan). The results show consistent performance between the native and Singularity (container) tests. The results also showed an unexplained drop in performance when using the Cray Gemini network with Open MPI’s OpenSHMEM, which was unrelated to the container usage.