Fault tolerance configuration and management for HPC applications using RADIC architecture

Los sistemas de computación de alto rendimiento (HPC) continúan creciendo exponencialmente en términos de cantidad y densidad de componentes para lograr mayor potencia de cálculo. Al mismo tiempo, cloud computing se está volviendo popular, ya que las características clave tales como escalabilidad, p...

Descripción completa

Detalles Bibliográficos
Autor: Villamayor Leguizamón, Jorge Luis
Tipo de recurso: tesis doctoral
Estado:Versión publicada
Fecha de publicación:2018
País:España
Institución:CBUC, CESCA
Repositorio:TDR. Tesis Doctorales en Red
OAI Identifier:oai:www.tdx.cat:10803/666057
Acceso en línea:http://hdl.handle.net/10803/666057
Access Level:acceso abierto
Palabra clave:Tolerància a fallos
Tolerancia a fallos
Faulth tolerance
Computació d'altes prestacions
Computación de altas prestaciones
High performance computing
Cloud computing
Tecnologies
004
id ES_fe4ff564a2cd291f7b509b7b618ecedf
oai_identifier_str oai:www.tdx.cat:10803/666057
network_acronym_str ES
network_name_str España
repository_id_str
dc.title.none.fl_str_mv Fault tolerance configuration and management for HPC applications using RADIC architecture
title Fault tolerance configuration and management for HPC applications using RADIC architecture
spellingShingle Fault tolerance configuration and management for HPC applications using RADIC architecture
Villamayor Leguizamón, Jorge Luis
Tolerància a fallos
Tolerancia a fallos
Faulth tolerance
Computació d'altes prestacions
Computación de altas prestaciones
High performance computing
Cloud computing
Tecnologies
004
title_short Fault tolerance configuration and management for HPC applications using RADIC architecture
title_full Fault tolerance configuration and management for HPC applications using RADIC architecture
title_fullStr Fault tolerance configuration and management for HPC applications using RADIC architecture
title_full_unstemmed Fault tolerance configuration and management for HPC applications using RADIC architecture
title_sort Fault tolerance configuration and management for HPC applications using RADIC architecture
dc.creator.none.fl_str_mv Villamayor Leguizamón, Jorge Luis
author Villamayor Leguizamón, Jorge Luis
author_facet Villamayor Leguizamón, Jorge Luis
author_role author
dc.contributor.none.fl_str_mv Rexachs del Rosario, Dolores Isabel
Universitat Autònoma de Barcelona. Departament d'Arquitectura de Computadors i Sistemes Operatius
dc.subject.none.fl_str_mv Tolerància a fallos
Tolerancia a fallos
Faulth tolerance
Computació d'altes prestacions
Computación de altas prestaciones
High performance computing
Cloud computing
Tecnologies
004
topic Tolerància a fallos
Tolerancia a fallos
Faulth tolerance
Computació d'altes prestacions
Computación de altas prestaciones
High performance computing
Cloud computing
Tecnologies
004
description Los sistemas de computación de alto rendimiento (HPC) continúan creciendo exponencialmente en términos de cantidad y densidad de componentes para lograr mayor potencia de cálculo. Al mismo tiempo, cloud computing se está volviendo popular, ya que las características clave tales como escalabilidad, pay-per-use y alta disponibilidad continúan evolucionando. También se está convirtiendo en una plataforma competitiva para ejecutar aplicaciones paralelas HPC debido al rendimiento cada vez mayor de instancias virtualizadas y de alta disponibilidad. Sin embargo, aumentar la cantidad de componentes para crear sistemas más grandes tiende a incrementar la frecuencia de fallos tanto en clústeres como en cloud. Hoy en día, los sistemas HPC tienen una tasa de fallos de alrededor de 1000 por año, lo que significa un fallo cada aproximadamente 8 horas. La mayoría de las aplicaciones paralelas distribuidas se construyen sobre una interfaz de paso de mensajes (MPI). Las implementaciones MPI siguen una semántica fail-stop predeterminada, que aborta la ejecución en caso de fallos de host en un clúster. En este caso, el propietario de la aplicación debe reiniciar la ejecución, lo que afecta el tiempo total esperado del mismo y, además, el costo, ya que requiere adquirir más recursos durante periodos de tiempo más largos. Las técnicas de Tolerancia a Fallos (TF) deben aplicarse a las ejecuciones paralelas de MPI tanto en clúster como en cloud. Con las técnicas de TF, se garantiza una alta disponibilidad para aplicaciones paralelas. Para aplicar algunas soluciones de TF, se requieren privilegios de administrador para instalarlas en los nodos del clúster. Además, cuando aparecen fallos, se requiere intervención humana para reiniciar la aplicación. Se prefiere una solución que minimice la intervención de usuarios y administradores. Una contribución de esta tesis es un Fault Tolerance Manager (FTM) para checkpoints coordinados, que proporciona a los usuarios la recuperación automática de fallos al perder nodos de clúster. FTM aprovecha el almacenamiento local en los nodos para guardar los checkpoints, y distribuye sus copias entre los nodos de computo, evitando el cuello de botella de un almacenamiento centralizado. También aprovechamos FTM para utilizar protocolos de rollback-recovery no-coordinados y semi-coordinados. En esta contribución, FTM se implementa en la capa de aplicación. Además, se agrega un controlador dinámico de recursos al FTM, que monitoriza el uso de recursos destinados para la protección FT y realiza acciones para mantener un nivel aceptable de protección. Otra contribución apunta a la configuración de tareas de protección y recuperación de la TF. Se presentan dos modelos: el modelo First Protection Point (FPP) determina el punto de partida para introducir la protección de TF de modo a obtener beneficios en términos de tiempo total de ejecución, incluyendo fallos, eliminando checkpoints innecesarios. El segundo modelo permite mejorar la configuración de recursos de la TF para la tarea de recuperación. Con respecto a entornos cloud, proponemos Resilience as a Service (RaaS), un servicio que provee TF para aplicaciones HPC, que utiliza FTM. RaaS proporciona al cloud un servicio de TF distribuido, escalable y altamente disponible. Rediseña los mecanismos tradicionales de protección y recuperación de HPC, para aprovechar de forma nativa las capacidades del cloud y sus múltiples alternativas para implementar tareas de TF. En resumen, esta tesis contribuye a proporcionar un gestor de tolerancia a fallos multi-plataforma “Multi-Platform Resilience Manager” (MRM), adecuado para entornos de clústers y clouds (públicos y privados). La solución presentada proporciona TF de forma automática, distribuida y transparente en las capas de aplicación y usuario según los requisitos de usuarios, aplicaciones y entorno de ejecución. Brinda además, a los usuarios información crítica de la TF, lo que les permite compensar entre costos y protección, manteniendo el tiempo medio de reparación dentro de rangos aceptables. Durante las validaciones experimentales se utilizaron varios entornos experimentales, como clústeres tradicionales y cloud (públicos y privados), ejecutando diferentes aplicaciones paralelas. Los experimentos verifican la funcionalidad y la mejora de las contribuciones. Además, también muestran que el tiempo medio de reparación se encuentra limitado y dentro de rangos aceptables.
publishDate 2018
dc.date.none.fl_str_mv 2018
2019
2019
dc.type.none.fl_str_mv info:eu-repo/semantics/doctoralThesis
info:eu-repo/semantics/publishedVersion
format doctoralThesis
status_str publishedVersion
dc.identifier.none.fl_str_mv http://hdl.handle.net/10803/666057
url http://hdl.handle.net/10803/666057
dc.language.none.fl_str_mv Inglés
language_invalid_str_mv Inglés
dc.rights.none.fl_str_mv http://creativecommons.org/licenses/by-nc-nd/4.0/
info:eu-repo/semantics/openAccess
rights_invalid_str_mv http://creativecommons.org/licenses/by-nc-nd/4.0/
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv 146 p.
application/pdf
application/pdf
dc.publisher.none.fl_str_mv Universitat Autònoma de Barcelona
publisher.none.fl_str_mv Universitat Autònoma de Barcelona
dc.source.none.fl_str_mv TDX (Tesis Doctorals en Xarxa)
reponame:TDR. Tesis Doctorales en Red
instname:CBUC, CESCA
instname_str CBUC, CESCA
reponame_str TDR. Tesis Doctorales en Red
collection TDR. Tesis Doctorales en Red
repository.name.fl_str_mv
repository.mail.fl_str_mv
_version_ 1869425673896984576
spelling Fault tolerance configuration and management for HPC applications using RADIC architectureVillamayor Leguizamón, Jorge LuisTolerància a fallosTolerancia a fallosFaulth toleranceComputació d'altes prestacionsComputación de altas prestacionesHigh performance computingCloud computingTecnologies004Los sistemas de computación de alto rendimiento (HPC) continúan creciendo exponencialmente en términos de cantidad y densidad de componentes para lograr mayor potencia de cálculo. Al mismo tiempo, cloud computing se está volviendo popular, ya que las características clave tales como escalabilidad, pay-per-use y alta disponibilidad continúan evolucionando. También se está convirtiendo en una plataforma competitiva para ejecutar aplicaciones paralelas HPC debido al rendimiento cada vez mayor de instancias virtualizadas y de alta disponibilidad. Sin embargo, aumentar la cantidad de componentes para crear sistemas más grandes tiende a incrementar la frecuencia de fallos tanto en clústeres como en cloud. Hoy en día, los sistemas HPC tienen una tasa de fallos de alrededor de 1000 por año, lo que significa un fallo cada aproximadamente 8 horas. La mayoría de las aplicaciones paralelas distribuidas se construyen sobre una interfaz de paso de mensajes (MPI). Las implementaciones MPI siguen una semántica fail-stop predeterminada, que aborta la ejecución en caso de fallos de host en un clúster. En este caso, el propietario de la aplicación debe reiniciar la ejecución, lo que afecta el tiempo total esperado del mismo y, además, el costo, ya que requiere adquirir más recursos durante periodos de tiempo más largos. Las técnicas de Tolerancia a Fallos (TF) deben aplicarse a las ejecuciones paralelas de MPI tanto en clúster como en cloud. Con las técnicas de TF, se garantiza una alta disponibilidad para aplicaciones paralelas. Para aplicar algunas soluciones de TF, se requieren privilegios de administrador para instalarlas en los nodos del clúster. Además, cuando aparecen fallos, se requiere intervención humana para reiniciar la aplicación. Se prefiere una solución que minimice la intervención de usuarios y administradores. Una contribución de esta tesis es un Fault Tolerance Manager (FTM) para checkpoints coordinados, que proporciona a los usuarios la recuperación automática de fallos al perder nodos de clúster. FTM aprovecha el almacenamiento local en los nodos para guardar los checkpoints, y distribuye sus copias entre los nodos de computo, evitando el cuello de botella de un almacenamiento centralizado. También aprovechamos FTM para utilizar protocolos de rollback-recovery no-coordinados y semi-coordinados. En esta contribución, FTM se implementa en la capa de aplicación. Además, se agrega un controlador dinámico de recursos al FTM, que monitoriza el uso de recursos destinados para la protección FT y realiza acciones para mantener un nivel aceptable de protección. Otra contribución apunta a la configuración de tareas de protección y recuperación de la TF. Se presentan dos modelos: el modelo First Protection Point (FPP) determina el punto de partida para introducir la protección de TF de modo a obtener beneficios en términos de tiempo total de ejecución, incluyendo fallos, eliminando checkpoints innecesarios. El segundo modelo permite mejorar la configuración de recursos de la TF para la tarea de recuperación. Con respecto a entornos cloud, proponemos Resilience as a Service (RaaS), un servicio que provee TF para aplicaciones HPC, que utiliza FTM. RaaS proporciona al cloud un servicio de TF distribuido, escalable y altamente disponible. Rediseña los mecanismos tradicionales de protección y recuperación de HPC, para aprovechar de forma nativa las capacidades del cloud y sus múltiples alternativas para implementar tareas de TF. En resumen, esta tesis contribuye a proporcionar un gestor de tolerancia a fallos multi-plataforma “Multi-Platform Resilience Manager” (MRM), adecuado para entornos de clústers y clouds (públicos y privados). La solución presentada proporciona TF de forma automática, distribuida y transparente en las capas de aplicación y usuario según los requisitos de usuarios, aplicaciones y entorno de ejecución. Brinda además, a los usuarios información crítica de la TF, lo que les permite compensar entre costos y protección, manteniendo el tiempo medio de reparación dentro de rangos aceptables. Durante las validaciones experimentales se utilizaron varios entornos experimentales, como clústeres tradicionales y cloud (públicos y privados), ejecutando diferentes aplicaciones paralelas. Los experimentos verifican la funcionalidad y la mejora de las contribuciones. Además, también muestran que el tiempo medio de reparación se encuentra limitado y dentro de rangos aceptables.High Performance Computing (HPC) systems continue growing exponentially in terms of components quantity and density to achieve demanding computational power. At the same time, cloud computing is becoming popular, as key features such as scalability, pay-per-use and availability continue to evolve. It is also becoming a competitive platform for running parallel HPC applications due to the increasing performance of virtualized, highly-available instances. Although, augmenting the amount of components to create larger systems tends to increment the frequency of failures in both clusters and cloud environments. Nowadays, HPC systems have a failure rate of around 1000 per year, meaning a failure every approximately 8 hours. Most of the parallel distributed applications are built on top of a Message Passing Interface (MPI). MPI implementations follow a default fail-stop semantic, which aborts the execution in case of host failure in a cluster. In this case, the application owner needs to restart the execution, which affects the wall clock time and, also, the cost since it requires to acquire computing resources for longer periods of time. Fault Tolerance (FT) techniques need to be applied to MPI parallel executions in both, cluster and cloud environments. With FT techniques, high availability is ensured for parallel applications. In order to apply some FT solutions, administrator privileges are required, to install them in the cluster nodes. Moreover, when failures appear human intervention is required to recover the application. A solution, which minimizes users and administrators intervention is preferred. A contribution of this thesis is a Fault Tolerance Manager (FTM) for coordinated checkpoint, which provides the application's users with automatic recovery from failures when losing computing nodes. It takes advantage of node local storage to save checkpoints, and it distributes copies of them along all the computation nodes, avoiding the bottleneck of a central stable storage. We also leverage the FTM to use uncoordinated and semi-coordinated rollback recovery protocols. In this contribution, FTM is implemented in the application-layer. Furthermore, a dynamic resource controller is added to the FTM, which monitors the FT protection resource usage and performs actions to maintain an acceptable level of protection. Another contribution aims to the FT protection and recovery tasks configuration. Two models are introduced. The First Protection Point model (FPP) determines the starting point to introduce FT protection gaining benefits in terms of total execution time including failures, by removing unnecessary checkpoints. The second model allows improving the FT resource configuration for the recovery task. Regarding cloud environments, we propose Resilience as a Service (RaaS), a fault tolerant framework for HPC applications, which uses FTM. RaaS provides clouds with a highly available, distributed and scalable fault-tolerant service. It redesigns traditional HPC protection and recovery mechanisms, to natively leverage cloud capabilities and its multiple alternatives for implementing FT tasks. To summarize, this thesis contributes on providing a multi-platform resilience manager, suitable for traditional baremetal clusters and clouds (public and private). The presented solution provides FT in an automatic, distributed and transparent manner in the application and user levels according to the users, applications, and runtime requirements. It gives the users critical FT information, allowing them to trade-off cost and protection keeping the mean time to repair within acceptable ranges. Several experimental environments such as bare-metal clusters and cloud (public and private), running different parallel applications were used during the experimental validations. The experiments verify the functionality and improvement of the contributions. Moreover, they also show that the Mean Time To Repair is bounded within acceptable ranges.Universitat Autònoma de BarcelonaRexachs del Rosario, Dolores IsabelUniversitat Autònoma de Barcelona. Departament d'Arquitectura de Computadors i Sistemes Operatius201920192018info:eu-repo/semantics/doctoralThesisinfo:eu-repo/semantics/publishedVersion146 p.application/pdfapplication/pdfhttp://hdl.handle.net/10803/666057TDX (Tesis Doctorals en Xarxa)reponame:TDR. Tesis Doctorales en Redinstname:CBUC, CESCAInglésL'accés als continguts d'aquesta tesi queda condicionat a l'acceptació de les condicions d'ús establertes per la següent llicència Creative Commons: http://creativecommons.org/licenses/by-nc-nd/4.0/http://creativecommons.org/licenses/by-nc-nd/4.0/info:eu-repo/semantics/openAccessoai:www.tdx.cat:10803/6660572026-06-14T12:46:07Z
score 15,300719