Containers as ‘Tupperware’: Experts Debate Container Concepts, Strategies

By Tiffany Trader

April 24, 2019

Panels tend to be among the livelier conference sessions and the “Containers” panel at Tabor’s Advanced Scale Forum last week in Jacksonville, Fla., was certainly no exception. Moderated by Ryan Quick (principal, Providentia Worldwide — formerly with PayPal), the session aimed to catalyze debate about the evolving container landscape in HPC, and “hopefully get rid of some sacred cows,” in the words of Quick. Did it accomplish those goals? Keep reading to find out.

Joining Quick on stage were Robert Blake (computational scientist at Lawrence Livermore National Laboratory), Max Alt (CEO and founder of Atrio), and Jay Boisseau (AI and HPC technology strategist with Dell EMC).

While previous sessions (on cloud and AI) tackled the best place to run your workloads (i.e., in the cloud, on-prem, etc.), Quick laid out as a ground rule that for containers, it does not matter whether they’re on the edge, in your cluster or the middle the of the datacenter, “they operate the same way regardless.”

Quick, who’s been using containers in production since 2006 and was the first person to ever try and successfully get the PCI audit approved for containers (on the Solaris operating system), began by pointing out that containers and virtual machines are not the same thing. “They have absolutely different design goals. They have absolutely different approaches to workload isolation and very distinct methods of orchestration and management,” he said. “Nevertheless they continue to be seen as interchangeable terms. How do we change that perception?”

An opening preamble intended to level set failed to find immediate consensus.

L to R: Jay Boisseau, Ryan Quick, Max Alt and Robert Blake

“Can I quibble with your opening statement first?” queried Boisseau. “I don’t think they have completely, fundamentally different purposes; both of them were seen as methods of getting efficiency out of the underlying infrastructure. Beyond that first statement, I’ll agree with different design principles and everything. The thing that helps me at least understand it is virtual machines are virtualizing the machine whereas containers are virtualizing the OS.”

You can run a VM inside a VM and you can run a container inside a VM. But can you run a VM inside a container? Quick noted it is possible to run a Windows VM inside a container.

Alt remarked that the spectrum between VMs and containers can be very hard to see, given the existence of lightweight VMs and heavyweight containers.

Boisseau proffered some simple high-level definitions to clarify the distinction: “In the VM world, you are completely virtualizing the machine so you have a complete self-contained OS that has private access to all aspects of the underlying OS and a full copy of it. In a container, you are abstracting the OS, so the container uses less RAM because it only has to have the runtime differences from the base OS. So typically, the container world is mostly Linux and mostly Linux containers on Linux OSs, which is what reduces that RAM footprint, so you are only providing the runtime differences from the base OS and it provides that easy patching because you are only patching the base OS and that perpetuates into the runtime differences and so on.”

This was well received – until Barbara Eckman (principal data architect, Comcast), interjecting from the audience, brought up statefulness. “VMs are clearly stateful, they are a whole machine, so they have databases and all kinds of stuff. With containers…”

“All right, so you see it’s a little fuzzy,” Quick responded. “Let’s see if we can set some guidelines. Let’s say for the sake of argument — and we’ll take research and weird experimentation out of it — generally speaking the idea for a virtual machine is to implement something that feels like a machine. I think we can generally agree a container is generally meant to create something that feels like Tupperware. It’s meant to isolate stuff and keep it together, but not necessarily make it feel like you are running an entire machine when you do that.

“Can we agree that generally speaking that’s what we do? Truth be told there are absolutely opposites on each side. There are. There are very, very lightweight virtual machines that feel like a container. There are very heavyweight containers that feel very much like running a machine. But generally-speaking I think we can agree those are kind of the design principles that separated that.”

Parameters thus established, the initial question was reposed: “how do we change the perception of everybody else so that when they sit down they are not talking about two different things at the same meeting?”

“The thing is there are these different gradations where you have a lightweight VM or big container, but it’s all just in encapsulation technologies. You need to see what fits the purpose,” said Alt. “What do you really need? Do you need a stateful machine? Do you need to migrate? Do you need them to be an HPC type of environment? Does it need to be a multinode environment that has to provide a connectivity. We just need to look at it as a big diversity of technologies that we need to pick for the solution. That’s why we have 20 container technologies right now, at least.”

“I would say in my world, still the best practice when you are running large jobs that run over millions of cores and every process is talking to each other for a big distributed science problem, is still static binaries, so the easiest way to sell containers is to say, ‘don’t do static binaries just use this it’s the same thing but better,’” said Blake.

Asked why this is considered a good solution, Blake continued: “People use static binaries because if you actually try to take an application and run it for more than six months, invariably someone in IT will move a library and suddenly you have to play the whole LD_LIBRARY_PATH to find what libraries you were actually using six months ago to run your application – whereas if it’s statically linked, it’s all there in the binary, provided you never change anything else…”

This brought the panel to the topic of portability, one of the purported benefits of containers.

“People think they are portable,” said Alt, “but when you get to real HPC environment portability, they are not portable. You need to make sure, which MPI libraries are you binding with, how you mount the parallel file system, and all that — container technology doesn’t solve that.”

“But remember the goal: Tupperware versus a machine,” Quick rejoined.

“If you go to a picnic and you’re not going to bring all the ingredients to make deviled eggs once you get there, you’re bringing deviled eggs in a container.  You are going to bring your sandwiches in a container because nobody wants to try to set up a kitchen outside. I think you’re right though: people assume portability means interoperability, but that’s not the case. Containers are absolutely not interoperable. The whole point is you’ve put everything together into a bucket that is needed to make your bucket function and then you take it with you to the picnic. You see what I’m saying?”

Tagging onto Alt’s point, Blake had more to say about MPI. “[It’s] just no fun to deal with if you’re trying to deploy an application because there’s no ABI for MPI, so you have to have the same thing that you’re linking against to run anything. Good luck trying to deploy an MPI application without giving out the source code for it. I’ve been so frustrated with this at times that I’ve just debated making my own MPI shim layer that does the static MPI and then does something there.”

Showcasing the diversity of the panel, Quick stated he’s never used MPI once, while Blake countered that it’s the only thing used in the HPC world.

“For fine-grained parallel applications, yes, it is the only thing,” Boisseau, the founding director of TACC (the Texas Advanced Computing Center), agreed.

“It is the only thing used and it has no ABI,” Blake continued. “The standard practice now for distributing an application between clusters is actually just to give the source code and give build instructions and say, compile this over the next three days, and, hopefully, it will build on your machine.”

“To what Robert’s talking about, there’s lots of reasons that we do these things and there’s lot of crazy edges between where these technologies leave off and where they sort of jump off and become different from each other,” said Quick. “But the goal is we need to make sure we understand the core basics of, and distinctions between, the two. That they are complementary but not the same thing and they definitely at this point have different design goals.

“They both came from a desire to more efficiently use hardware because hardware outpaces software by large margins, but on the flip side software developers are easier to obtain than hardware engineers, so you see this pendulum swing back and forth.”

Putting semantics aside for the moment, Quick was about to congratulate the panel and the wider audience for dropping the notion that bare metal is the only way to run things – when Alt jumped in on the side of bare metal.

“On the positive side, with containers, I think if you try to build a TensorFlow application, a container is probably the most sensible way of building it and deploying it because it has so many dependencies and the dependency tree is really big. So if you want to make it somewhat portable, you have to use containers. But on the flip side, if it’s a distributed or MPI type of situation, then using containers is a very complicated matter, which not many people can do,” said Alt.

Continuing to search for truly common ground, Boisseau said everyone would agree containers are an exploding technology with at least one analyst predicting a 40 percent year-to-year growth trajectory. Containers shine when it comes to a lightweight way of embracing this DevOps world of continuous development and continuous integration, said Boisseau, especially at scale. It’s something his colleague Don Walker (distinguished engineer at Dell EMC) says requires adoption of a different approach – moving from an imperative model to a declarative model.

“Instead of saying how to do task ‘x,’ when you have millions of servers you need to be able to say what is it that I want to accomplish and what are the basic requirements, and let the system figure it out,” said Boisseau. “You can tell one server what to do, you can tell 10 servers what to do, but trying to manage millions and billions and trillions of tasks on millions of servers [is too much], so this declarative model is necessary, and that’s where containers I think really have some strength. Certainly within a hyperscale environment they give great portability. So you can phrase things in terms of ‘this is what I need done.’”

IT orchestration was the next topic, with Quick delivering this opening statement:

“IT orchestration and visibility has always sat high in the eyes of the CIO and the CFO, but often finds itself at best an afterthought as we move down in the organization. Containers make huge promises with regards to orchestration, instrumentation and hands-off management. We constantly hear terms like Kubernetes, Marathon, Swarm and usually in the context of other things like DevOps, organization autonomy and shorter time to market. How have containers delivered on these lofty promises?”

Blake’s response was swift: “I don’t think we will ever use Kubernetes for the type of things we do.”

“Don’t be so sure,” said Quick, explaining he had just completed work deploying Kubernetes on the Oak Ridge Summit supercomputer (Sierra’s non-classified counterpart).

“But we have a different use case,” said Blake. “So when I submit a job, I allocate a certain number of things, and I usually only want one thing running on those clusters and it’s usually the same application just talking to itself a million times.”

When Quick pointed out that Kubernetes can do that, Blake responded that the IT service people wouldn’t switch.

Boisseau added that given his history he’d be primed to agree, but had a different perspective:

“You have to remember the whole IT market has been dominated by enterprise except HPC. It’s only been in recent years that enterprise has become more than half of the HPC spend and growing. I think where Rob computes may not use Kubernetes, but I think the vast majority of HPC will use it in the way that you were just talking about. And this is coming from a guy who used Slurm and deployed Slurm on systems. I think Kubernetes or something like it is the more general approach. And there’s nothing to prevent you in a declarative model from saying I declare what I need is a bunch of nodes that are single tenant and aren’t running a bunch of other tasks so that my fine-grained application has a chance at performing well.”

All three panelists expressed doubt that anyone was actually using Kubernetes to distribute an MPI job in a production setting, but Quick countered that indeed they are. “I can’t tell you who at the moment, but I can tell you there are absolutely people who are using Kubernetes on top of [Nvidia] DGXs doing MPI jobs in production,” he said, referencing Nvidia’s DeepOps tool that enables this “out of the box.”

Blake said, “I would love if we could use something like Kubernetes but first have to fix a level down below it in the software stack. For example, there’s a lot of multi-physics applications going on at the labs right now, but the way those multi-physics applications are usually built is you take four or five different packages and you link them together as one huge static binary as, say, five different codes together in one thing – and then you run that and they all talk together through one shared MPI instance. I would love to have a more microservices approach to compute fine-grained physics, so you could say I want this portion over here doing CFD, this portion over here doing the structural mechanics, and have them communicate with each other through something better than MPI – but we do not have that right now as far as I know.”

The panelists, if not the moderator, all found common ground on one point: there is still a distinction between the requirements of the more traditional HPC side and the enterprise side even as some of those barriers are slowly coming down, or at least being questioned.

“We talked on an earlier panel about the streaming workloads. You have streams of data and you have a microservice that takes that data and then you have a batch type of situation where you have to work with traditional schedulers, resource managers and orchestrators to process a batch of data. So it’s perhaps the environment you need. You use Kubernetes for what it’s built for, microservices, and then you use something that is more batch,” said Alt.

“I think that has to be the way it is in the near-term,” said Boisseau. “These came from different design points, and while enterprise HPC is the fastest-growing part of HPC and while enterprise has embraced Kubernetes and virtualization — all these technologies that the high-end research HPC labs don’t typically use — the reality is they are going to benefit from the maturation of those software tools, but it isn’t today, yet. So when we go talk to customers about HPC purpose-built clusters, we don’t recommend Kubernetes but we recommend Slurm or one of the counterparts, but we do have some customers now who want to repurpose that infrastructure for more of a Kubernetes potentially managed workload by day but then partition off a section to do Slurm job submission on a set of jobs…”

“So there is a mechanism for this to happen, I believe, in the traditional HPC sense,” said Blake. “There’s a whole new batch of jobs that are being created where you have basically a large work queue of simulations that is being driven by machine learning AI system and the machine learning AI system is then feeding back and analyzing saying, ‘OK, this is what I want you to run next.’ And it makes sense in those instances to have Kubernetes for the machine learning part that then issue commands to say like a Slurm…”

“I’ve even seen workloads where they use containers as part of an AI workflow that then gets pushed to run,” said Quick.

“The new stuff can be easily containerized – but the old stuff…MPI and Slurm are together like this and you’ll never pull them apart,” said Blake.

Quick offered a final takeaway and a word of advice, noting that orchestration is very complex and it’s unlikely that one technology will win out above all others.

“I will advise everybody: don’t try and do it yourself. If your core competency does not have something to do with the things we were talking about up here today, buy your way out of the problem because it’s not simple.”

Subscribe to HPCwire's Weekly Update!

Be the most informed person in the room! Stay ahead of the tech trends with industy updates delivered to you every week!

Intel Debuts Pohoiki Beach, Its 8M Neuron Neuromorphic Development System

July 17, 2019

Neuromorphic computing has received less fanfare of late than quantum computing whose mystery has captured public attention and which seems to have generated more efforts (academic, government, and commercial) but whose Read more…

By John Russell

Goonhilly Unveils New Immersion-Cooled Platform, Doubles Down on Sustainability Mission

July 16, 2019

Goonhilly Earth Station has opened its new datacenter – an enhancement to its existing tier 3 facility – in Cornwall, England, touting an ambitious commitment to holistic sustainability as well as launching a managed Read more…

By Oliver Peckham

New CMU AI Poker Bot – Pluribus – Humbles the Pros Again

July 15, 2019

Remember Libratus, the Carnegie Mellon University developed AI poker bot that’s been humbling poker professionals at Texas hold’em for a couple of years. Well, say hello to Pluribus, an upgraded bot, which has now be Read more…

By John Russell

HPE Extreme Performance Solutions

Bring the Combined Power of HPC and AI to Your Business Transformation

A growing number of commercial businesses are implementing HPC solutions to derive actionable business insights, to run higher performance applications and to gain a competitive advantage. Read more…

IBM Accelerated Insights

Smarter Technology Revs Up Red Bull Racing

In 21st century business, companies that effectively leverage their information resources – thrive. As it turns out, the same is true in Formula One racing. Read more…

ISC19 Cluster Competition: Application Results, Finally!

July 15, 2019

Our exhaustive coverage of the ISC19 Student Cluster Competition continues as we discuss the application scores below. While the scores were typically high, some of the apps, like SWIFT and OpenFOAM, really pushed the st Read more…

By Dan Olds

Intel Debuts Pohoiki Beach, Its 8M Neuron Neuromorphic Development System

July 17, 2019

Neuromorphic computing has received less fanfare of late than quantum computing whose mystery has captured public attention and which seems to have generated mo Read more…

By John Russell

Goonhilly Unveils New Immersion-Cooled Platform, Doubles Down on Sustainability Mission

July 16, 2019

Goonhilly Earth Station has opened its new datacenter – an enhancement to its existing tier 3 facility – in Cornwall, England, touting an ambitious commitme Read more…

By Oliver Peckham

New CMU AI Poker Bot – Pluribus – Humbles the Pros Again

July 15, 2019

Remember Libratus, the Carnegie Mellon University developed AI poker bot that’s been humbling poker professionals at Texas hold’em for a couple of years. We Read more…

By John Russell

ISC19 Cluster Competition: Application Results, Finally!

July 15, 2019

Our exhaustive coverage of the ISC19 Student Cluster Competition continues as we discuss the application scores below. While the scores were typically high, som Read more…

By Dan Olds

Nvidia Expands DGX-Ready AI Program to 19 Countries

July 11, 2019

Nvidia’s DGX-Ready Data Center Program, announced in January and designed to provide colo and public cloud-like options to access the company’s GPU-powered Read more…

By Doug Black

Argonne Team Makes Record Globus File Transfer

July 10, 2019

A team of scientists at Argonne National Laboratory has broken a data transfer record by moving a staggering 2.9 petabytes of data for a research project.  The data – from three large cosmological simulations – was generated and stored on the Summit supercomputer at the Oak Ridge Leadership Computing Facility (OLCF)... Read more…

By Oliver Peckham

Nvidia, Google Tie in Second MLPerf Training ‘At-Scale’ Round

July 10, 2019

Results for the second round of the AI benchmarking suite known as MLPerf were published today with Google Cloud and Nvidia each picking up three wins in the at Read more…

By Tiffany Trader

Applied Materials Embedding New Memory Technologies in Chips

July 9, 2019

Applied Materials, the $17 billion Santa Clara-based materials engineering company for the semiconductor industry, today announced manufacturing systems enablin Read more…

By Doug Black

High Performance (Potato) Chips

May 5, 2006

In this article, we focus on how Procter & Gamble is using high performance computing to create some common, everyday supermarket products. Tom Lange, a 27-year veteran of the company, tells us how P&G models products, processes and production systems for the betterment of consumer package goods. Read more…

By Michael Feldman

Cray, AMD to Extend DOE’s Exascale Frontier

May 7, 2019

Cray and AMD are coming back to Oak Ridge National Laboratory to partner on the world’s largest and most expensive supercomputer. The Department of Energy’s Read more…

By Tiffany Trader

Graphene Surprises Again, This Time for Quantum Computing

May 8, 2019

Graphene is fascinating stuff with promise for use in a seeming endless number of applications. This month researchers from the University of Vienna and Institu Read more…

By John Russell

AMD Verifies Its Largest 7nm Chip Design in Ten Hours

June 5, 2019

AMD announced last week that its engineers had successfully executed the first physical verification of its largest 7nm chip design – in just ten hours. The AMD Radeon Instinct Vega20 – which boasts 13.2 billion transistors – was tested using a TSMC-certified Calibre nmDRC software platform from Mentor. Read more…

By Oliver Peckham

TSMC and Samsung Moving to 5nm; Whither Moore’s Law?

June 12, 2019

With reports that Taiwan Semiconductor Manufacturing Co. (TMSC) and Samsung are moving quickly to 5nm manufacturing, it’s a good time to again ponder whither goes the venerable Moore’s law. Shrinking feature size has of course been the primary hallmark of achieving Moore’s law... Read more…

By John Russell

Deep Learning Competitors Stalk Nvidia

May 14, 2019

There is no shortage of processing architectures emerging to accelerate deep learning workloads, with two more options emerging this week to challenge GPU leader Nvidia. First, Intel researchers claimed a new deep learning record for image classification on the ResNet-50 convolutional neural network. Separately, Israeli AI chip startup Hailo.ai... Read more…

By George Leopold

Nvidia Embraces Arm, Declares Intent to Accelerate All CPU Architectures

June 17, 2019

As the Top500 list was being announced at ISC in Frankfurt today with an upgraded petascale Arm supercomputer in the top third of the list, Nvidia announced its Read more…

By Tiffany Trader

Top500 Purely Petaflops; US Maintains Performance Lead

June 17, 2019

With the kick-off of the International Supercomputing Conference (ISC) in Frankfurt this morning, the 53rd Top500 list made its debut, and this one's for petafl Read more…

By Tiffany Trader

Leading Solution Providers

ISC 2019 Virtual Booth Video Tour

CRAY
CRAY
DDN
DDN
DELL EMC
DELL EMC
GOOGLE
GOOGLE
ONE STOP SYSTEMS
ONE STOP SYSTEMS
PANASAS
PANASAS
VERNE GLOBAL
VERNE GLOBAL

Intel Launches Cascade Lake Xeons with Up to 56 Cores

April 2, 2019

At Intel's Data-Centric Innovation Day in San Francisco (April 2), the company unveiled its second-generation Xeon Scalable (Cascade Lake) family and debuted it Read more…

By Tiffany Trader

Cray – and the Cray Brand – to Be Positioned at Tip of HPE’s HPC Spear

May 22, 2019

More so than with most acquisitions of this kind, HPE’s purchase of Cray for $1.3 billion, announced last week, seems to have elements of that overused, often Read more…

By Doug Black and Tiffany Trader

A Behind-the-Scenes Look at the Hardware That Powered the Black Hole Image

June 24, 2019

Two months ago, the first-ever image of a black hole took the internet by storm. A team of scientists took years to produce and verify the striking image – an Read more…

By Oliver Peckham

Announcing four new HPC capabilities in Google Cloud Platform

April 15, 2019

When you’re running compute-bound or memory-bound applications for high performance computing or large, data-dependent machine learning training workloads on Read more…

By Wyatt Gorman, HPC Specialist, Google Cloud; Brad Calder, VP of Engineering, Google Cloud; Bart Sano, VP of Platforms, Google Cloud

It’s Official: Aurora on Track to Be First US Exascale Computer in 2021

March 18, 2019

The U.S. Department of Energy along with Intel and Cray confirmed today that an Intel/Cray supercomputer, "Aurora," capable of sustained performance of one exaf Read more…

By Tiffany Trader

Why Nvidia Bought Mellanox: ‘Future Datacenters Will Be…Like High Performance Computers’

March 14, 2019

“Future datacenters of all kinds will be built like high performance computers,” said Nvidia CEO Jensen Huang during a phone briefing on Monday after Nvidia revealed scooping up the high performance networking company Mellanox for $6.9 billion. Read more…

By Tiffany Trader

Chinese Company Sugon Placed on US ‘Entity List’ After Strong Showing at International Supercomputing Conference

June 26, 2019

After more than a decade of advancing its supercomputing prowess, operating the world’s most powerful supercomputer from June 2013 to June 2018, China is keep Read more…

By Tiffany Trader

In Wake of Nvidia-Mellanox: Xilinx to Acquire Solarflare

April 25, 2019

With echoes of Nvidia’s recent acquisition of Mellanox, FPGA maker Xilinx has announced a definitive agreement to acquire Solarflare Communications, provider Read more…

By Doug Black

  • arrow
  • Click Here for More Headlines
  • arrow
Do NOT follow this link or you will be banned from the site!
Share This