AWS Beats Azure to K80 General Availability
Amazon Web Services has seeded its cloud with Nvidia Tesla K80 GPUs to meet the growing demand for accelerated computing across an increasingly-diverse range of workloads. The P2 instance family is a welcome addition for compute- and data-focused users who were growing frustrated with the performance limitations of Amazon’s G2 instances, which are backed by three-year-old Nvidia GRID K520 graphics cards.
The Kepler-generation Telsa K80 was launched nearly two years ago and we’ve since seen the debut of the Maxwell and Pascal architectures, yet the K80 is still going strong, owing to its ability to simultaneously serve multiple application areas.
It’s certainly a popular GPU for cloud providers. Microsoft Azure’s K80-based N-Series virtual machines were delayed by some months, but have now been in preview mode since early August. IBM Softlayer and Cirrascale both offer it and the regional Alibaba Cloud in China is using similar Telsa K40 parts.
Clouds are general purpose by nature. To mine efficiencies of scale, cloud providers select their offerings for mass appeal. To that end, the Telsa K80 GPU offers a nice mix of single and double precision floating point and sufficient memory and memory bandwidth to benefit a range of workloads, from modeling and simulation, to CFD, to deep learning and data and video processing.
“The K80 is our workhorse GPU in the Tesla product line,” said Roy Kim, director, Accelerated Data Center Computing at NVIDIA, in an interview with HPCwire. “It has by far the greatest number of shipments in volume in the history of Tesla. It’s proven and it’s in some of the largest datacenters in both HPC and in hyperscale. We’re going to be shipping it for a long time.
“I found it fascinating that Amazon’s announcement covered five use cases: HPC simulation, HPC developers with Matlab, AI and then these other two that you don’t hear as much about, enterprise SQL and cloud for video transcode,” Kim continued. “The K80 will be the perfect GPU to cover all five use cases. It is that general-purpose processor.”
There is an argument to be made that Pascal with its huge number of cores and mixed-precision capabilities enabling very high single- and half-precision performance (a boon to many machine learning workloads) will be even more flexible across a broad swath of use cases. Cloud services purveyors, however, want to capture the deep learning momentum now and the K80 is proving to be the right GPU for the right price (a premium part to be sure, but not as premium as the Tesla P100s). Plus, there’s a little matter of availability. Nvidia says it is currently filling some massive Pascal orders. “There is interest from the cloud space, but there’s a line; we’re building them as fast as we can,” said Kim.
Many in HPC as well as some of Amazon’s hyperscale clients, like Netflix, have wondered why AWS took so long to embrace a more performant GPU. The preeminent cloud provider has had two years to adopt the K80 and longer for the K40. Amazon likes to tout its HPC cloud chops, but apparently the HPC market wasn’t attractive enough on its own to incentivize the outlay. But add in machine learning, database processing, real-time video processing – plus more enterprise HPC workloads – and suddenly there’s a much larger addressable market at stake.
Addison Snell, CEO of Intersect360 Research agrees. “Artificial intelligence and deep learning are going to be major application growth areas over the next few years, and they will be predominantly run on public cloud resources,” he said. “Whether you look at it as an HPC application or a hyperscale application, the net effect is that it becomes a bigger business for cloud service providers.”
Analyst firm IDC has reported that seven out of eight public cloud implementations by HPC sites are on AWS.
“So the choice in HPC is AWS,” said Steve Conway, research vice president in IDC’s high performance computing group. “The other side of that is only about 7-8 percent of work done in HPC sites is done in public clouds. So it’s far wider than it is deep, and that has to do with the subset of applications that makes sense to run in public clouds. So the majority of applications still make sense to run on premises.
“It’s still embarrassingly parallel work that makes sense to do in the public cloud, they’re architected to run that kind of workload efficiently. The kinds of applications like machine learning and deep learning that really benefit from GPUs, that work is becoming much more popular, so this makes sense. When people are doing big data, most of it is still done on CPUs, but GPU use is increasingly fairly quickly.”
Moving from the K520 to the K80 raises the ceiling significantly in terms of FLOPS and memory. Card to card, peak single-precision teraflops increases from about 4.9 to 8.73. Double-precision floating point is negligible on the K520, while the K80 is spec’d at 2.91 DP teraflops. And even more importantly for many users, GDDR5 memory per GPU slice (which is how AWS bundles these) jumps four-fold, from 4GB to 12GB.
Amazon makes the speedup look even more appealing by comparing instance generations rather than the GPUs. “P2 instances offer seven times the computational capacity for single precision floating point calculations and 60 times more for double precision floating point calculations than the largest G2 instance,” said AWS Matt Garman, vice president, Amazon EC2 in an official statement.
Naturally, these performance enhancements incur a significant cost hike. The largest P2 instance, p2.16xlarge, delivers 16 physical GPUs (eight K80 cards) and will cost you $14.40 per hour (on-demand) and $6.80 per hour (for reserved instance pricing). The largest machine configuration offered on Azure, NC24, tops out at four physical GPUs (two K80 cards), however list pricing is not yet available.
That 16-GPU P2 instance will get you 20 Gbps networking, which is bound to be disappointing for some users with workloads that would benefit from RMDA InfiniBand speeds. Competitor Microsoft Azure has said it will offer RDMA over InfiniBand across its K80 nodes.
Amazon is pairing its K80s with custom Intel Xeon E5-2686 v4 chips, and instances come with either 4, 32 or 64 vCPUs. The Azure NC-Series virtual machines are hooked into the Intel Xeon E5-2690 v3 processor, providing either 6, 12 or 24 cores per machine.
The three K80-backed AWS instances — p2.16xlarge with 16 GPUs, p2.8xlarge with 8 GPUs, and p2.xlarge with 1 GPU — are available now in Amazon’s US East (N. Virginia), US West (Oregon), and EU (Ireland) regions.
Amazon is also announcing the Deep Learning API, which contains all the major machine learning frameworks, including MXNet, Caffe, Theano, TensorFlow, and Torch. The Amazon API along with CUDA drivers and toolkits are available through the Amazon marketplace.