Desenvolvimento e análise de biblioteca de tolerância a falhas para aplicações em Python em sistemas de memória distribuída
Date
Authors
Journal Title
Journal ISSN
Volume Title
Publisher
Abstract
A distribuição de altas cargas de trabalho entre diferentes nós computacionais é uma abordagem eficiente, principalmente para aplicações científicas. Todavia, à medida que aumentamos os recursos computacionais, o risco de ocorrência de falha (de hardware ou software) em um dos nós também aumenta. Dessa forma, é preciso que as aplicações possuam mecanismos de tolerância a falhas para assegurar sua resiliência. DeLIApy é um wrapper Python que estende as funcionalidades de tolerância a falhas da biblioteca original DeLIA (implementada em C++) para que aplicações desenvolvidas em Python garantam a resiliência em ambientes de memória distribuída. O DeLIApy possuía uma versão que implementava parcialmente algumas funcionalidades do DeLIA. Neste trabalho, é realizado o desenvolvimento das funcionalidades que abordam o User-Level Failure Mitigation que não estavam disponibilizadas no DeLIApy. Também é feita a análise do desempenho da biblioteca em uma aplicação de Inversão de Forma de Onda Completa desenvolvida com o framework Devito, para analisar o custo da adição da tolerância a falhas causado pela biblioteca. Os resultados validaram a correta execução das rotinas de resiliência e demonstraram que o custo adicional da biblioteca torna-se percentualmente pequeno em problemas maiores, consolidando o DeLIApy como uma solução eficiente.

