The State of HPC Cloud
While HPC cloud is still in the early stages of adoption, it is becoming more commonplace. Various hurdles must be overcome and users must become comfortable with new usage models, but as technology ramps up to meet these challenges, the benefits of a cloud model will attract more and more HPC users.
Public and Private HPC Clouds
HPC clouds can be public, private, or hybrid. Public HPC clouds include services such as Amazon Web Services, Penguin On Demand and others. These services provide elastic HPC compute resources billed by the hour. Private HPC clouds use the hardware HPC sites already own, but manage it in an elastic, cloud-like fashion. This model can be more economical and can fit the needs of a given site more closely than a public cloud. Hybrid clouds combine both of these models, allowing some workloads to run locally on a private HPC cloud, while running other workloads on a public cloud.
HPC Cloud Benefits
Today’s rapidly advancing cloud technology presents significant opportunities for HPC sites to maximize return on investment. HPC system managers can leverage the benefits of the cloud model for their traditional HPC environments for the best of both worlds. Adding HPC cloud capabilities to HPC systems improves workload management, increases system utilization and makes the HPC system accessible to a wider community. HPC cloud benefits include:
• Scalability to better support application and job needs with automated workload-optimized node OS provisioning.
• Simplified self-service access for a broader set of users that also reduces management and training costs.
• Accelerated collaboration or funding by extending HPC resources to community partners without their own HPC systems.
• Pay-per-use with showback and chargeback reporting for actual resource usage by user, group, project, or account.
• Workload bursting using commercial HPC service providers for surge and peak load requirements to accelerate results.
• Higher efficiency without the cost and disruption of ripping and replacing existing technology
• Sophisticated migration policies that enforce SLAs and mitigate transient failures.
• Interfacing with external components using Web services that allow seamless integration into existing business processes
HPC Cloud Challenges for the Future
Traditional high performance computing (HPC) has been a key resource for many companies over the years to help resolve a broad range of problems that need large amounts of computing resources. These systems are usually tailored to address a specific task which can in itself present potential issues surrounding their limited application by a small subset of those within an organization. This has contributed to difficulties in justifying the total cost of ownership of these systems.
In the last 20 years or so, this has started to change. Universities, for example, have seen more and more departments start to take advantage of what high performance computing has to offer them. This is key in expanding HPC’s role within these institutions and showing an increase on their return on investment.
This expansion also creates new challenges. As HPC grows, it needs to cater to a wider audience who are not familiar with these technologies. To help these users, four key areas need to be addressed:
Simplifying the user experience
HPC Cloud users, be they scientists, engineers, system administrators or developers, all need a simpler user experience. The toolsets and user interfaces need to be more consistent and intuitive. Today’s hodge-podge of command-line tools, custom scripts and arcane commands makes it difficult for new users to take advantage of HPC cloud systems. Luckily, many tool providers recognize this trend and are working to improve the situation. This is perhaps the biggest barrier to wider HPC cloud adoption today.
Supporting the growing range of applications and operating systems
Hardware and software developers need to match their capabilities to the wide and deep range of HPC workloads. HPC cloud’s success depends on being able to run most of these HPC workloads, including those that significantly tax the compute and I/O resources. Additionally, HPC workloads run on a wide variety of operating environments, not all of which are supported by HPC cloud providers today. This support is crucial to the ongoing growth of HPC cloud as a viable option for the majority of HPC users.
Supporting big data and higher I/O demands
With the exponential growth of data being created, HPC workloads are often I/O bound. Big data workloads are commonplace and stretch the I/O capacity of HPC cloud systems. Historically, virtualization has significantly limited I/O performance. This has improved, via technologies such as Single Root IO Virtualization (SR-IOV), which provide better interfaces to the I/O subsystem for virtual workloads. More progress must be made on this front in order to truly exploit the value of HPC cloud for big data.
Continuing cost reduction
HPC cloud costs have been declining more rapidly than traditional HPC costs. However, this trend must continue to make it economical to move more workloads to the HPC clouds. Today, bursty workloads are very economical to place in an HPC cloud. More steady-state workloads may not be, depending on the situation. Over time, as HPC clouds become less expensive, more and more workloads will be less expensive to run on the cloud. Market consolidation and the continuing march of technology will likely continue to feed this trend.
HPC cloud technology presents significant opportunities for HPC sites to maximize flexibility and return on investment. Adding HPC cloud capabilities to existing HPC systems improves workload management, increases system utilization, and makes the HPC system accessible to a wider community. While there is still work to be done to make HPC cloud more widely used, there is a bright future ahead for HPC cloud.