Utilize este identificador para citar ou criar um atalho para este documento: https://hdl.handle.net/10923/1533
Tipo: doctoralThesis
Título: Mapeamento dinâmico de tarefas em MPSoCs heterogêneos baseados em NoC
Autor(es): Carvalho, Ewerson Luiz de Souza
Orientador: Moraes, Fernando Gehm
Editora: Pontifícia Universidade Católica do Rio Grande do Sul
Programa: Programa de Pós-Graduação em Ciência da Computação
Data de Publicação: 2009
Palavras-chave: INFORMÁTICA
MULTIPROCESSADORES
HEURÍSTICA (INFORMÁTICA)
ALGORITMOS
Resumo: MPSoCs are multi-processor systems integrated in a single chip. They are a trend in VLSI circuit design, since they minimize the design productivity crisis represented by the gap between the silicon technol-ogy and the actual SoC design capacity. Examples of MPSoCs include those proposed by Intel and Tilera, composed by 80 and 64 processing elements respectively. MPSoCs may employ NoCs to integrate several processors, memories, as well as specific hardware cores. NoCs may be used to replace busses, due to their ad-vantages of higher scalability and communication parallelism. The target architecture of the present work is a NoC-based heterogeneous MPSoC supporting hard-ware task execution through embedded reconfigurable logic, together with software tasks executed by pro-grammable processors. One of the processors of the target architecture, named manager processor, is respon-sible for system resources management, task scheduling, task mapping, and configuration control. Task map-ping defines the placement of a new task into the system. Most works in literature propose static mapping techniques defined at design time, where all application tasks are mapped simultaneously. This static map-ping is not appropriate for dynamic workloads scenarios. Since applications running in MPSoCs may con-tain a varying number of tasks, and since their number may exceed the available resources, task mapping at run-time is necessary. Such task mapping method is named dynamic task mapping. The present work investigates the performance of heuristics for dynamic task mapping, targeting NoC congestion minimization. Tasks are mapped on demand, according to the communication requests and the load in NoC channels. The implemented algorithms employ a greedy approach, where tasks are indivi-dually mapped. The mapping decision is based on local information, considering the communication con-straints of the requested task. The algorithm used as the reference mapping strategy in experiments maps a task into the first free resource available. Four congestion-aware mapping heuristics are proposed. Through the experiments employing RTL abstraction level modeling, it is possible to observe reductions of 31% in channel load distribution, 15% in average latency, and 87% in congestion level. These results demonstrate the efficiency of proposed heuristics.
MPSoCs são sistemas multiprocessados integrados na forma de um SoC. Eles são tendência no projeto de circuitos VLSI, pois minimizam a crise de produtividade de projeto, representada pelo descompasso entre a capacidade da tecnologia do silício e a capacidade atual de projeto de SoCs. Cita-se como exemplo de MPSoCs os propostos pela Intel e pela Tilera, compostos respectivamente por 80 e 64 núcleos de processa-mento. MPSoCs podem empregar NoCs para integrar diversos processadores, memórias, bem como núcleos de hardware específicos. O uso de NoCs deve-se a suas vantagens em relação a barramentos, entre as quais maior escalabilidade e paralelismo na comunicação. A arquitetura alvo do presente trabalho consiste em um MPSoC heterogêneo, com utilização de NoC como meio interconexão entre os elementos de processamento, suportando a execução de tarefas de hardware via lógica reconfigurável, e a execução de tarefas de software via processadores. Um dos processadores da arquitetura alvo, denominado processador gerente, é responsável por: gerência da ocupação dos recursos do sistema, escalonamento, mapeamento, e configuração de tarefas. O mapeamento de tarefas define a posição de uma dada tarefa no sistema. A maioria dos trabalhos encontrados na literatura propõe técnicas de mapeamento estático, definido em tempo de projeto, no qual todas as tarefas de uma dada aplicação são mapeadas simultaneamente. Este mapeamento estático não é adequado para cenários com carga dinâmica de tarefas. Dado que aplicações executando em um MPSoC podem possuir um número variável de tarefas, e que tal número pode exceder os recursos disponíveis, é necessário realizar o mapeamento de tarefas em tempo de execução, mapeamento este denominado de mapeamento dinâmico.O presente trabalho investiga o desempenho de heurísticas para mapeamento dinâmico de tarefas, com o objetivo de minimizar congestionamentos em NoCs. As tarefas são mapeadas sob demanda, de acordo com as requisições de comunicação e com a ocupação dos canais da NoC. Os algoritmos implementados aplicam estratégias gulosas, onde as tarefas são mapeadas uma por vez. Para isso, a decisão é baseada na informação local da aplicação, apenas relacionada à tarefa requisitada. O algoritmo utilizado como referência nos experimentos mapeia uma dada tarefa no primeiro recurso livre encontrado. Quatro heurísticas congestion-aware são propostas. Através de experimentos realizados com base na modelagem do sistema no nível RTL, pode-se observar redução de 31% na carga nos canais da NoC, de 15% na latência média, e de até 87% no nível médio de congestionamento. Tais resultados demonstram a eficiência das heurísticas propostas.
URI: http://hdl.handle.net/10923/1533
Aparece nas Coleções:Dissertação e Tese

Arquivos neste item:
Arquivo Descrição TamanhoFormato 
000418219-Texto+Completo-0.pdfTexto Completo3,94 MBAdobe PDFAbrir
Exibir


Todos os itens no Repositório da PUCRS estão protegidos por copyright, com todos os direitos reservados, e estão licenciados com uma Licença Creative Commons - Atribuição-NãoComercial 4.0 Internacional. Saiba mais.