Tratamento de Código Seqüencial no Modelo de Fluxo de Dados - Visoli, Marcos C.; Catto, Arthur J. (Anais do International Symposium on Computer Architecture and High Performance Computing (SBAC-PAD); 1992: Anais do IV Simpósio Brasileiro de Arquitetura de Computadores e Processamento de Alto DesempenhoDO - 10.5753/sbac-pad.1992.22708, 1992)
Uma das questões ainda não resolvidas eficientemente em multiprocessamento é a determinação do tamanho ou granularidade ideal das tarefas ou processos, com o objetivo de obter desempenho aceitável. A dificuldade decorre do fato de que a granularidade conflita com o volume de sincronizações a serem realizadas. Máquinas multiprocessadoras baseadas no modelo von Neumann exploram paralelismo ao nível de subprograma e comandos e, conseqüentemente, suportam granularidade grossa. Isso implica em um número menor de sincronizações, mas também numa inadequada exploração do paralelismo das aplicações. Máquinas de fluxo de dados, por sua vez, exploram paralelismo ao nível de instrução, suportando, portanto, granularidade fina. Apesar de tratarem o paralelismo mais adequadamente do que as máquinas de von Neumann, as máquinas de fluxo de dados pecam pela necessidade de um grande número de sincronizações. Este artigo trata da redução do número de sincronizações no modelo de fluxo de dados a partir do agrupamento de código seqüencial.