Construção e avaliação comparativa de um sistemas DSM. - Marino, Mário Donato (2001)
A programação de um sistema de memória distribuído é difícil pois envolve conceitos de origem, destino, empacotamento e desempacotamento de mensagens. No que tange à programação e uso da memória, um sistema paralelo de memória compartilhada é uma extensão do modelo de memória tradicional com um processador, portanto não existe a necessidade de se preocupar para onde e o que transferir de um lugar para o outro. Assim, para tornar os \"clusters\" de máquinas tão fácil de ser programado como uma máquina de memória fisicamente compartilhada, utilização dos \"clusters\", a abstração de Distributed Shared Memory (DSM) foi criada: permite a visão de um sistema distribuído como se tivesse uma memória compartilhada única, com vários processadores (nós da rede). Para manter a visão da memória compartilhada única entre todos os nós da rede, é necessária a manutenção da consistência. O grande problema da consistência é o grande número de mensagens para mantê-la, aumenta a sobrecarga, diminuindo assim o desempenho. Pela utilização de modelos de memória fracos, como o modelo de consistência preguiçosa e o modelo de consistência de entrada, consegue-se reduzir a quantidade de dados e mensagens que trafegam na redepara a manutenção da consistência. Neste trabalho apresenta-se um novo sistema DSM: o Nautilus. O Nautilus apresenta as seguintes características: \"multithreaded\", não utiliza o sinal SIGIO para a indicação de chegada de mensagens, utiliza a consistência de entrada paraa diminuir a quantidade de mensagens trafegadas na rede, técnica de múltiplos escritores concorrentes para minimizar o falso compartilhamento, utiliza protocolo UDP para minimizar os \"overheads\" de rede e apresenta primitivas compatíveis com outros DSMs (podendo outros programas escritos em outros DSMs ou sistemas paralelos serem facilmente portados). Numa outra fase, também são avaliadas as técnicas de agregação de páginas e detecção de escrita. Os ) resultados experimentais mostram que as técnicas empregadas na construção do Nautilus permitiram a obtenção de melhores tempos de execução e menor número de mensagens que outros DSMs conhecidos na comunidade acadêmica.