Autores

2074
135,161,886
2075
Ricardo Bianchini
(Orientador)
135,161,886
2076
135,161,886

Informações:

Publicações do PESC

Título
Estratégias de Hardware e Software para Otimização de Sistemas de Memória Compartilhada Distribuída
Linha de pesquisa
Arquitetura e Sistemas Operacionais
Tipo de publicação
Tese de Doutorado
Número de registro
Data da defesa
14/12/2001
Resumo

Um dos maiores custos remanescentes em sistemas de memória compartilhada distribuída com coerência de dados mantida por software (software DSMs) é a alta latência de acesso a dados remotos. Sendo assim, esta tese apresenta o estudo e o desenvolvimento de estratégias de software e hardware que toleram e/ou reduzem a latência de acesso a dados remotos em software DSMs. Em termos de estratégias de software nós propomos uma nova técnica de pré-busca, chamada Adaptive++, que visa otimizar aplicações paralelas, utilizando o histórico das falhas de acesso à memória para guiar as pré-buscas. Nós avaliamos Adaptive++ isoladamente e quando combinada a outras duas técnicas de tolerância a latência: adaptação entre protocolos único-escritor e múltiplos-escritores, e coerência baseada no envio seletivo de atualizações. Nossos resultados mostram que Adaptive++ reduz o tempo de acesso a dados remotos das aplicações regulares em até 62% em um cluster de 8 PCs. Aplicações irregulares apresentam reduções mais modestas. Os resultados de desempenho mostram que Adaptive++ consegue oferecer um aumento de speedup de até 35%. Em adição, os resultados mostram que a combinação das três estratégias alcança ganhos de speedup de até 118%. Em termos de estratégias de hardware, nós propomos a técnica de diff dinâmico que utiliza o controlador de protocolos projetado com o nosso auxílio para o sistema NCP2. O controlador monitora o barramento de memória, e marca todas as escritas a dados compartilhados em vetores de bits. Posteriormente, estes vetores de bits são inspecionados para determinar as modificações feitas a páginas (diffs). Mostramos que esta estratégia reduz os custos de coerência em até 92% em um cluster de 4 PCs. Esta redução é traduzida em ganhos de desempenho de até 12%.

Abstract

One of the most serious overheads that remains in software-based distributed shared-memory systems (software DSMs) is the high latency of remote data accesses. Thus, this thesis presents the study and development of software and hardware strategies that can tolerate and/or reduce remote access latencies in software DSMs. In terms of software strategies, we propose a nove1 prefetching technique, called Adaptive++, that optimizes parallel applications by using the past history of memory access faults to guide prefetching. We evaluate Adaptive++ in isolation and when combined with two other latency-tolerance techniques: adaptation between single-writer and multiple-writer protocols, and selective update-based coherence. Our results show that Adaptive++ reduces the remote data access overheads of regular applications by as much as 62% on a cluster of 8 PCs. Irregular applications exhibit more modest reductions. The performance results show that Adaptive++ can provide speedup improvements as significant as 35%. Furthermore, the results show that the combination of the three techniques can achieve speedup improvements of up to 118%. In terms of hardware strategies, we propose the dynamic diff technique that uses the protocol controller we helped design for the NCP2 system. The controller snoops the memory bus and records a11 shared data writes in bit vectors. These bit vectors can later be inspected to determine the modifications made to pages (diffs). We show that this strategy can reduce coherence overheads by up to 92% on a cluster of 4 PCs. These gains translate into overall performance improvements of up to 12%.

Topo