Since 1986 - Covering the Fastest Computers in the World and the People Who Run Them

Language Flags
June 10, 2013

HPC in the Cloud: Old Wine in New Bottles

Dinesh Agarwal

Cloud computing has become mainstream in today’s HPC world. Although there is no consensus on the definition of cloud computing, it is typically perceived as a set of shared and scalable commodity computing resources that are geographically located throughout the world and are available on-demand over the web.

There has been a great amount of confusion over whether cloud computing is a new infrastructure or the same old HPC that we know, wrapped in a new name as a marketing gimmick. Review of the literature points to the fact that a large section of the academic community still debates this question.

Buyya et al. argue that cloud computing appears to be similar to grid computing at a cursory glance. However, a closer observation presents a different case. Armburst et al. supports the claim of Buyya et al., adding that the cloud computing platform uniquely provides an illusion of infinite available resources.

Lee advocates the difference by employing the case of Hurricane Katrina in 2005 to conclude that the only answer to the scientific and operational grand challenge problem is enormous computer power. However, it is not economically possible to dedicate the required amount of resources for this single purpose. Therefore resources must be shared and available on-demand, the platform should be scalable on-demand, and resources should be easily accessible in a user friendly way over the web. The grid computing platform or any other large compute cluster cannot adapt to these guidelines.

Foster et. al presents a comprehensive comparison of the grid computing and the cloud computing platforms. The authors recognize the similarity in the two platforms in terms of the vision and challenges, but the authors also make a solid case to differentiate the two platforms in terms of scale of operation. The authors agree that the more massive scale being offered by the cloud computing platform can demand fundamentally different approaches to tackle a gamut of problems.

Such confusion has hampered the curious nature of researchers to explore cloud computing. With a vague assumption that there aren’t any challenges that have not been previously posed by various distributed computing platforms such as compute-clusters and grid computing, many of the HPC researchers have not been motivated enough to explore the newer research challenges and opportunities in offering computing as a utility. Furthermore, the lack of universal development standards for cloud computing platforms mandate the eScience developers to rewrite their respective applications from scratch for every cloud offering.

Although cloud computing has many aspects closely similar to the traditional parallel and distributed computing platforms, it poses a new set of its own challenges. Traditional large-scale computing resources were not targeted at enabling end-users to rent compute hours with provisioning time being in minutes.

On the contrary, cloud computing facilitates experimentation with an idea on a massive platform without investing the capital in owning the resources. Therefore, it has the potential to target a much bigger set of users not necessarily familiar with the parallel or distributed computing aspects.

In order to enable the HPC researchers who currently work with large distributed computing systems, but do not work with cloud computing, to bring their expertise to cloud computing, it is essential to provide them with easier means of applying their knowledge.

One way of doing this is by allowing them familiar frameworks from a traditional HPC setting. If all cloud platforms supported frameworks and runtimes such as BSP, MPI, and Map-reduce, it would have been so much easier for their adoption. Our research concentrated on the problem of bringing the frameworks such as bag-of-tasks and MPI to cloud platforms. Our implementation on Microsoft’s Azure cloud platform provided some positive results.  

We were able to create (simple) applications from scratch and deploy them in less than 2 hours. The lines of code were about 200-300 lines that includes the file handling, processing, and reporting. These applications were not very complex but they serve as proofs of concept that such frameworks can help motivate developers to create applications for cloud platforms.

We did not beat the performance of the Azure APIs with our frameworks, but that was never the vision. We have increased the programmer productivity by manifold without sacrificing the performance. Our results show performance at par with applications that employ native Azure APIs. Our major contribution is that it is now easier for anyone to write an MPI-style application on the Azure platform without learning a single Azure API and without understanding the idiosyncrasies of the Azure cloud platform.

We envision future research to concentrate on unifying the theme of cloud computing by offering seamless portability among various cloud vendors, rich set of resources to suit a large user base (multi-core, many-cores etc.), better resource management, faster time to provision resources, and improved debugging interface.

About Dinesh Agarwal: Dinesh Agarwal recently graduated with a Ph.D. from Georgia State University. He is currently pursuing a career as an entrepreneur working with both HPC in the cloud and to solve a pesky problem that bothered him as a student with Bookup. You can find him on LinkedIn, @Twitter, or simply email him at dinwal at gmail dot com. 

Sponsored Links

SC14 Virtual Booth Tours

AMD SC14 video AMD Virtual Booth Tour @ SC14
Click to Play Video
Cray SC14 video Cray Virtual Booth Tour @ SC14
Click to Play Video
Datasite SC14 video DataSite and RedLine @ SC14
Click to Play Video
HP SC14 video HP Virtual Booth Tour @ SC14
Click to Play Video
IBM DCS3860 and Elastic Storage @ SC14 video IBM DCS3860 and Elastic Storage @ SC14
Click to Play Video
IBM Flash Storage
@ SC14 video IBM Flash Storage @ SC14  
Click to Play Video
IBM Platform @ SC14 video IBM Platform @ SC14
Click to Play Video
IBM Power Big Data SC14 video IBM Power Big Data @ SC14
Click to Play Video
Intel SC14 video Intel Virtual Booth Tour @ SC14
Click to Play Video
Lenovo SC14 video Lenovo Virtual Booth Tour @ SC14
Click to Play Video
Mellanox SC14 video Mellanox Virtual Booth Tour @ SC14
Click to Play Video
Panasas SC14 video Panasas Virtual Booth Tour @ SC14
Click to Play Video
Quanta SC14 video Quanta Virtual Booth Tour @ SC14
Click to Play Video
Seagate SC14 video Seagate Virtual Booth Tour @ SC14
Click to Play Video
Supermicro SC14 video Supermicro Virtual Booth Tour @ SC14
Click to Play Video