Please use this identifier to cite or link to this item: https://hdl.handle.net/10923/7538
Type: doctoralThesis
Title: Layered approach for runtime fault recovery in NOC-Based MPSOCS
Author(s): Wächter, Eduardo Weber
Advisor: Moraes, Fernando Gehm
Publisher: Pontifícia Universidade Católica do Rio Grande do Sul
Graduate Program: Programa de Pós-Graduação em Ciência da Computação
Issue Date: 2015
Keywords: INFORMÁTICA
ARQUITETURA DE COMPUTADOR
MICROPROCESSADORES
Abstract: Mechanisms for fault-tolerance in MPSoCs are mandatory to cope with defects during fabrication or faults during product lifetime. For instance, permanent faults on the interconnect network can stall or crash applications, even though the MPSoCs’ network has alternative faultfree paths to a given destination. Runtime Fault Tolerance provide self-organization mechanisms to continue delivering their processing services despite defective cores due to the presence of permanent and/or transient faults throughout their lifetime. This Thesis presents a runtime layered approach to a fault-tolerant MPSoC, where each layer is responsible for solving one part of the problem. The approach is built on top of a novel small specialized network used to search fault-free paths. The first layer, named physical layer, is responsible for the fault detection and fault isolation of defective routers. The second layer, named the network layer, is responsible for replacing the original faulty path by an alternative fault-free path. A fault-tolerant routing method executes a path search mechanism and reconfigures the network to use the faulty-free path. The third layer, named transport layer, implements a fault-tolerant communication protocol that triggers the path search in the network layer when a packet does not reach its destination. The last layer, application layer, is responsible for moving tasks from the defective processing element (PE) to a healthy PE, saving the task’s internal state, and restoring it in case of fault while executing a task. Results at the network layer, show a fast path finding method. The entire process of finding alternative paths takes typically less than 2000 clock cycles or 20 microseconds. In the transport layer, different approaches were evaluated being capable of detecting a lost message and start the retransmission. The results show that the overhead to retransmit the message is 2. 46X compared to the time to transmit a message without fault, being all other messages transmitted with no overhead. For the DTW, MPEG, and synthetic applications the average-case application execution overhead was 0. 17%, 0. 09%, and 0. 42%, respectively. This represents less than 5% of the application execution overhead worst case. At the application layer, the entire fault recovery protocol executes fast, with a low execution time overhead with no faults (5. 67%) and with faults (17. 33% - 28. 34%).
Mecanismos de tolerância a falhas em MPSoCs são obrigatórios para enfrentar defeitos ocorridos durante a fabricação ou falhas durante a vida útil do circuito integrado. Por exemplo, falhas permanentes na rede de interconexão do MPSoC podem interromper aplicações mesmo que a rede tenha caminhos sem falha para um determinado destino. A tolerância a falhas em tempo de execução fornece mecanismos de auto-organização para continuar a oferecer serviços de processamento apesar de núcleos defeituosos devido à presença de falhas permanentes e/ou transitórias durante toda a vida dos chips. Esta Tese apresenta uma abordagem em camadas para um MPSoC tolerante a falhas, onde cada camada é responsável por resolver uma parte do problema. O método é construído sobre uma nova proposta de rede especializada utilizada para procurar caminhos livre de falha. A primeira camada, denominada camada física, é responsável pela detecção de falhas e isolamento das partes defeituosas da rede. A segunda camada, denominada camada de rede, é responsável por substituir um caminho defeituoso por um caminho alternativo livre de falhas. Um método de roteamento tolerante a falhas executa o mecanismo de busca de caminhos e reconfigura a rede para usar este caminho livre de falhas. A terceira camada, denominada camada de transporte, implementa um protocolo de comunicação tolerante a falhas que detecta quando pacotes não são entregues ao destino, acionando o método proposto na camada de rede.A última camada, camada de aplicação, é responsável por mover as tarefas do elemento de processamento (PE) defeituoso para um PE saudável, salvar o estado interno da tarefa, e restaurá-la em caso de falha durante a execução. Os resultados na camada de rede mostram um método rápido para encontrar caminhos livres de falhas. O processo de procura de caminhos alternativos leva tipicamente menos de 2000 ciclos de relógio (ou 20 microssegundos). Na camada de transporte, diferentes abordagens foram avaliadas para detectar uma mensagem não entregue e acionar a retransmissão. Os resultados mostram que a sobrecarga para retransmitir a mensagem é 2,46 vezes maior quando comparado com o tempo para transmitir uma mensagem sem falha, sendo que todas outras mensagens subsequentes são transmitidas sem sobrecarga. Para as aplicações DTW, MPEG e sintética, o caso médio de sobrecarga no tempo de execução da aplicação é de 0,17%, 0,09% e 0,42%, respectivamente. Isto representa menos do que 5% do tempo de execução de uma dada aplicação no pior caso. Na camada de aplicação, todo o protocolo de recuperação de falhas executa rapidamente, com uma baixa sobrecarga no tempo de execução sem falhas (5,67%) e com falhas (17,33% - 28,34%).
URI: http://hdl.handle.net/10923/7538
Appears in Collections:Dissertação e Tese

Files in This Item:
File Description SizeFormat 
000474345-Texto+Completo-0.pdfTexto Completo3,89 MBAdobe PDFOpen
View


All Items in PUCRS Repository are protected by copyright, with all rights reserved, and are licensed under a Creative Commons Attribution-NonCommercial 4.0 International License. Read more.