En portugués
A tecnologia de cluster, impulsionada pelo advento de redes de alta velocidade, tem se tornado um importante veículo na otimização de aplicações potencialmente paralelizáveis. Existem diversas formas de melhorar o desempenho destas aplicações. Este trabalho, particularmente, aplica uma técnica denominada loop interchange em um programa de multiplicação de matrizes que foi executado sobre um cluster em um sistema DSM, o TreadMarks. Além da influência do algoritmo, outros fatores que afetam o desempenho dos sistemas DSM, como a quantidade de mensagens trocadas entre os vários nós do cluster e o número de máquinas utilizadas durante a execução do programa foram analisados. Os resultados obtidos, após um conjunto de testes realizados, comprovaram a influência que o padrão de acessos á memória exerce sobre o desempenho dos programas. Pequenas alterações na forma como o algoritmo acessa a memória do computador permitiram ganhos de desempenho, para alguns casos, de 100% a 270%.
En inglés
The cluster technology, impelled by the development of high-speed networks, is becoming an important vehicle in the optimization of potentially parallelizable applications. Several forms exist to improve the performance of these applications. This paper, particularly, applies a technique denominated loop interchange in a program of matrix multiplication that was executed on a cluster with the TreadMarks DSM system. Besides the influence of the algorithm, other factors that affect the performance of DSM systems, as the amount of messages changed among the several nodes of the cluster and the number of machines used during the execution of the program, were analyzed.
The obtained results, after a group of accomplished tests, proved the influence of the memory access pattern on the performance of the programs. Small alterations in the memory access pattern of the algorithm allowed a performance enhancement, for some cases, from 100% to 270%.