What’s the big difference between cloud computing and grid computing? The goal of cloud computing is to put system administrators out of work.
That’s one way of looking at it, at least. Steve Armentrout, CEO of Parabon Computation, says that was the perspective tossed out by a couple of Google and IBM reps at a panel discussion in which he recently participated. Armentrout suggests a less Dickensian way of looking at it: cloud computing is about “providing a datacenter that is fully automated.” (More on cloud versus grid later.)
Armentrout sees cloud and grid as complementary in some ways — bipartisan, you might say — but he is an unapologetic grid partisan — especially when it comes to his company’s collection of solutions. “We have no intention of changing our grid stripes,” he says. “What Parabon provides is grid software as a service. We enable individuals with grid applications to scale them across a large infrastructure without having to go out and buy hardware. They can just buy capacity as it’s needed. It’s a pay-as-you-go model.”
Basically, Parabon’s Frontier Grid Services offering is a high-performance computing utility. If you need a few thousand nodes to run a financial risk model or some other long and winding analysis, Parabon will hook you up to the resources you need. “We broker computation,” Armentrout says. Like its customers, the company doesn’t own datacenters. What it has is contracts with universities and institutions with big server farms and HPC clusters to aggregate their unused capacity. “All that compute power we use to provide computation on demand,” explains Armentrout.
There’s a lot of computational capability sitting around doing nothing, Armentrout says. “You often hear the estimate that standard servers are typically running at anywhere from 5 to 20 percent capacity. Just think of 80 percent capacity going to waste. Even in a virtualized environment, seldom do you see capacity usage at over 50 percent. All that idle capacity allows us to deploy across a university datacenter, for example, and execute large-scale jobs in the background. Frontier is our technology that lets us capture that unused capacity and make it available as a grid service.”
Parabon’s technology can be used, as just described, across worldwide “public” resources like campus networks — that’s the Parabon Computation Grid — but can also be applied to a company’s own network as the Frontier Enterprise Grid.
Parabon built its platform around the Frontier Grid Server, which provides grid services and shared resources to users and developers, whether using the Internet-based Parabon Computation Grid or an in-house Frontier Enterprise grid. The Frontier Grid Server manages execution of jobs across hundreds or thousands of compute nodes. “It can scale up to arbitrarily large grids,” Armentrout says. “Tens of thousands of machines.” Frontier always reserves excess capacity to handle unexpected scale-out demands, he says.
The Frontier Compute Engine is the agnostic agent application that runs on each grid node to actually do the work. It executes tasks only when the resource, the virtual machine in many cases, is not handling a primary task. “Frontier runs as a low-priority process,” Armentrout says, “so if running in a virtualized datacenter — a cloud, you could say — the Compute Engine backs off if a request comes in from the cloud application. It takes precedence. But when resources are not busy, we can fully saturate the datacenter during that unused period of time.”
For example, Parabon might have an arrangement with a research facility in Australia to use its cluster when the scientists are home at night. That could be prime work time for scientists on the other side of the globe. That’s when Frontier could saturate compute nodes to calculate solutions more quickly.
Parabon just released a browser-based interface called the Dashboard that provides an intuitive front-end to the Frontier Grid Platform. “It lets you easily monitor a job, kill a job, assign resources, plus some back-office and accounting functions like looking up how much you’re paying for use,” Armentrout says.
Parabon’s pricing structure is better explained by the company, but the basic idea is that customers pay for units of computational power using a formula that involves kilo-cap hours.
The company provides an API and suite of tools to simplify adapting applications to take advantage of Frontier grid capabilities. And there’s a collection of Frontier-ready programs for applications, including data mining and biological modeling. “It’s kind of like Apple’s App Store but for distributed applications,” Armentrout analogizes.
Parabon has been around since 2000, when it introduced “the first commercial grid,” Armentrout says. Customers include not just scientific researchers, but also financial analysts, commercial enterprises with high-end analytical demands, bioinformatics, traditional HPC users and government agencies. “Our customers are doing modeling and simulation with very large models, immense data sets,” he explains. “We enable them to run not just one complex scenario but 10,000 scenarios. With Frontier you can explore an entire space of possibilities at once instead of running one simulation, then another, then another.”
Grid vs. Cloud: Parabon-Style
“In terms of grid vs. cloud, there’s lots of confusion around those two terms,” Armentrout says. “But, honestly, the fact that cloud has so much hype surrounding it now makes it easier for us to clarify to customers the benefits of grid computing. Grid, I think, is becoming clearer in people’s minds, while cloud is still, if I might say it, a ‘cloudy’ term.”
There are certainly commonalities, he says: computational utility, virtualized use of computing resources, eliminating the need for dedicated resources and dramatically improved price/performance. “But cloud computing is more about auto-provisioning virtual machines,” explains Armentrout. “It’s about software that lets you go out into a cloud infrastructure, a virtualized datacenter, and say give me one or two VMs and get them in an automated and orderly way. It’s about a datacenter that is completely automated. Sure, customers can scale up and down — that’s one of the benefits of the model — but they typically don’t scale in large-scale numbers. That’s the nature of most Web applications, which is typically what runs in the cloud. In that environment, you still have a lot of capacity that’s available.”
On the other hand, he believes that grid computing is all about massive parallelization and running large-scale jobs on unused capacity rather than dedicated capacity. The goal is to accelerate large jobs from days to minutes and hours to seconds, and grid computing can enable computations that “just aren’t possible,” he says.
“The folks we’re talking to understand they need grid-scale compute capacity, and that’s not something they’ll get from a pure cloud approach,” Armentrout says. “We routinely run jobs on several thousand machines. It’s that mass parallelization that you just wouldn’t run in the cloud. You want a job done in 5 minutes, not days. Our grid service reaches out to thousands and thousands of boxes and returns an answer in minutes.”
“We’ve got a high-performance solution that works for our customers. We can take advantage of a cloud infrastructure, but we don’t need to chase the cloud phenomenon.”