Early soft error reliability assessment of convolutional neural networks executing on resource-constrained IoT edge devices - Abich, Geancarlo (2022)
Os algoritmos de aprendizado de máquina (ML) têm fornecido soluções diretas para uma ampla gama de aplicações. A alta demanda computacional de tais algoritmos limita sua adoção em dispositivos com restrição de recursos, os quais normalmente são constituídos por memória reduzida e componentes de baixo consumo de energia (por exemplo, mi crocontroladores e processadores). Embora implementações personalizadas, melhorias de desempenho e precisão reduzida de modelos de ML tenham sido estudadas extensiva mente, sua suscetibilidade a erros transientes causados por partículas de radiação ainda é uma questão em aberto. Nesse sentido, devido à sua flexibilidade e alto desempenho de simulação, os pesquisadores estão usando frameworks baseados em plataformas virtuais (VPs) para avaliar a confiabilidade de sistemas complexos expostos a erros temporários, considerando vários componentes de pilha de software rodando em processadores e mi crocontroladores comerciais. Embora o ganho na velocidade de simulação seja observado trivialmente em simuladores VP baseados em tradução binária dinâmica just-in-time (JIT), a consistência da avaliação de erros temporários dos frameworks de injeção de falha sub jacentes permanece incerta. Nesse sentido, a principal contribuição desta Tese é permitir, em fases iniciais de projeto, uma avaliação consistente e extensa da suscetibilidade à erros transientes de modelos de ML desenvolvidos com bibliotecas especializadas que permitem sua execução em processadores Arm com recursos limitados. Neste contexto, o primeiro objetivo desta Tese é analisar a consistência da avaliação de ocorrência erros transientes de um framework de injeção de falhas baseado em JIT (SOFIA) comparando com campanhas de injeção de falha conduzidas com simuladores orientados a eventos (isto é, plataformas mais realistas e precisas) considerando arquiteturas de um único processador. Considerando a consistência dos resultados conduzidos com SOFIA, o segundo objetivo desta Tese é investigar e identificar a correlação entre os resultados de injeção de falha, bibliotecas NN otimizadas e parâmetros de precisão reduzida de redes neurais convolucionais (CNNs) executando em dispositivos IoT com recursos limitados. Este estudo visa avaliar o equilíbrio entre desempenho relativo e confiabilidade para promo ver o uso de técnicas de mitigação baseadas em software para melhorar a confiabilidade destes modelos de ML. Compreendendo que as CNNs adotadas são vulneráveis à erros transientes, o terceiro objetivo desta Tese é avaliar o impacto das falhas no código, para metros e dados armazenados nas unidades de memória destes dispositivos considerando as bibliotecas otimizadas e a precisão reduzida utilizada em tais modelos de ML. Além disso, neste trabalho também foi desenvolvido uma versão paralela da CNN como uma tentativa de aumentar o desempenho e avaliar o impacto do paralelismo multi-thread na susceptibilidade a erros transientes comparando com a versão sequencial original. Nesse sentido, os resultados conduzidos nesta Tese compreendem mais de 14,8 milhões de in jeções de falhas considerando distintos estudos de caso, arquiteturas, número de núcleos, OSs, e bibliotecas de paralelização. A avaliação de consistência mostrou que o SOFIA é mais de 1000× mais rápido do que os simuladores com precisão de ciclo, preservando a precisão da análise de susceptibilidade a erros transientes (ou seja, diferença abaixo de 10%).