CUDA Application Runtime Performance in Cloud NAEs

JARVICE is the new cloud platform from Nimbix that brings truly new capabilities to cloud computing.

Our CTO, Leo Reiter, posted earlier this week on the benefits of a PaaS offering, and I wanted to follow that post by providing more details on how JARVICE enables the deployment of high performance CUDA applications in Nimbix Application Environments.

CUDA, NVIDIA’s programming environment for GPUs, has become prolific in high performance computing. GPUs are leveraged to speed up performance and reduce run times across a number of important industry applications. While GPUs have become increasingly available from cloud and hosting providers (Nimbix included), there have been fundamental challenges to consuming these resources from the cloud.

The first challenge is that many hosting providers have limited flexibility with purchasing terms which means that consumption of remote GPU resources can be costly for bursty HPC work. The traditional on-demand providers rely on virtualization technology with GPU pass-through, constraining the performance benefits offered by GPUs. For high performance CUDA-enabled applications, this performance degradation leads to longer runtimes and ultimately higher cloud costs. The JARVICE platform provisions cloud-based Nimbix Application Environments (NAEs) which run on top of GPU-enabled cloud resources. The NAE is akin to a cloud “instance” where users take a base environment template, such as Ubuntu 13.10 or Centos 6 and install CUDA applications. These applications may be run in the environment as is, or stored in the service catalog for future runs as batch-oriented tasks.

The new NAE, complete with the CUDA application installed, delivers bare-metal performance. Additionally, with per-minute billing, users of the platform are able to lower their costs to leverage GPU resources in the cloud. Our early benchmarks suggest that there is no performance difference between GPU applications running on a bare metal host and applications running in the NAE. Given this, the Nimbix GPU offering becomes unique for HPC work.

Supported use cases include CUDA developers wishing to benchmark new CUDA code, HPC application users who would like to submit CUDA runtimes on-demand for processing work, and software providers who might like to enable cloud access to their CUDA applications. In addition to the popular Tesla M2090 GPUs, NAEs also leverage the extreme performance of the latest generation of NVIDIA GPUs to further accelerate application runtimes. NAEs can be retargeted as new Nimbix hardware classes become available.   NAEs are available for early access users and you can register here to start building and running your CUDA applications in the cloud.