Volume 19 : Number 1 : Paper 1

April 2016
Title:
Impact of Thresholds and Load Patterns when Executing HPC Applications with Cloud Elasticity

Authors and Affiliations:
Vinicius Facco Rodrigues, Applied Computing Graduate Program - Unisinos Av. Unisinos, 950 – São Leopoldo, RS, Brazil
Gustavo Rostirolla, Applied Computing Graduate Program - Unisinos Av. Unisinos, 950 – São Leopoldo, RS, Brazil
Rodrigo da Rosa Righi, Applied Computing Graduate Program - Unisinos Av. Unisinos, 950 – São Leopoldo, RS, Brazil
Cristiano André da Costa, Applied Computing Graduate Program - Unisinos Av. Unisinos, 950 – São Leopoldo, RS, Brazil
Jorge Luis Victoria Barbosa, Applied Computing Graduate Program - Unisinos Av. Unisinos, 950 – São Leopoldo, RS, Brazil

Abstract:
Elasticity is one of the most known capabilities related to cloud computing, being largely deployed reactively using thresholds. In this way, maximum and minimum limits are used to drive resource allocation and deallocation actions, leading to the following problem statements: How can cloud users set the threshold values to enable elasticity in their cloud applications? And what is the impact of the application’s load pattern in the elasticity? This article tries to answer these questions for iterative high performance computing applications, showing the impact of both thresholds and load patterns on application performance and resource consumption. To accomplish this, we developed a reactive and PaaS-based elasticity model called AutoElastic and employed it over a private cloud to execute a numerical integration application. Here, we are presenting an analysis of best practices and possible optimizations regarding the elasticity and HPC pair. Considering the results, we observed that the maximum threshold influences the application time more than the minimum one. We concluded that threshold values close to 100% of CPU load are directly related to a weaker reactivity, postponing resource reconfiguration when its activation in advance could be pertinent for reducing the application runtime.

Portuguese Abstract:
Elasticidade é uma das capacidades mais conhecidas da computação em nuvem, sendo amplamente implantada de forma reativa usando thresholds. Desta forma, os limites máximos e mínimos são usados para conduzir ações de alocação de recursos e desalocação eles, levando às seguintes sentenças-problema: Como podem os usuários definir os valores de limite para permitir a elasticidade em suas aplicações em nuvem? E qual é o impacto do padrão de carga do aplicativo na elasticidade? Este artigo tenta responder a estas perguntas para aplicações iterativas de computação de alto desempenho, mostrando o impacto de ambos os lthresholds e padrões de carga no desempenho do aplicativo e consumo de recursos. Para isso, foi desenvolvido um modelo de elasticidade baseado em PaaS chamado autoplastic, empregando-o sobre uma nuvem privada para executar um aplicativo de integração numérica. Apresenta-se uma análise das melhores práticas e possíveis otimizações no que diz respeito ao par elasticidade e HPC. Considerando os resultados, observou-se que o limite máximo influencia o tempo de aplicação mais do que o mínimo. Concluiu-se que os limiares próximos a 100% da carga de CPU estão diretamente relacionados com a reactividade mais fraca, adiando reconfiguração de recursos quando sua ativação com antecedência pode ser pertinente para reduzir o tempo de execução do aplicativo.

DOI: http://dx.doi.org/10.19153/cleiej.19.1.1

Keywords:
Cloud elasticity, high-performance computing, resource management, self-organizing.

Portuguese Keywords:
Elasticidade, Nuvem, computação de alto desempenho, gerenciamento de recursos, auto-organização

Received 2015-12-10, Revised 2016-03-18 , Editor: Francisco Tirado
Full paper, 22 pages [ PDF, 5383 Kb ]