Single operation multiple data - paralelismo de dados ao nível da sub-rotina
Contribuinte(s) |
Paulino, Hervé |
---|---|
Data(s) |
20/07/2012
20/07/2012
2012
|
Resumo |
Dissertação para obtenção do Grau de Mestre em Engenharia Informática O advento dos processadores multi-core marcou o nascimento de uma nova era, em que se requer que as aplicações sejam concorrentes para que possam usufruir da natureza paralela do hardware. No entanto, esta mudança de paradigma na arquitectura dos processadores não foi acompanhada por alterações significativas nas linguagens de programação de uso generalizado. Obrigando frequentemente o programador a optar entre desempenho (com o recurso a computação paralela) e a produtividade no processo de desenvolvimento do software. Neste contexto, esta dissertação propõe a aplicação do paradigma de paralelismo de dados ao nível da sub-rotina. A invocação de uma sub-rotina dá origem a várias tarefas, cuja execução opera sobre partições distintas dos dados de entrada. A execução destas tarefas é delegada a uma pool de threads trabalhadores, que as executarão em paralelo, segundo uma variação do modelo de execução Single Program Multiple Data a que baptizámos como Single Operation Multiple Data. Este modelo é apresentado ao programador segundo o paradigma Distribute-Map-Reduce, em que os dados de entradas são particionados e submetidos às múltiplas instâncias da sub-rotina para execução paralela. Aos resultados parciais é posteriormente aplicada uma operação de redução para calcular o resultado final. A instanciação do modelo foi realizada como uma extensão à linguagem de programação Java, sendo o sistema de execução construído sobre o sistema de execução da linguagem X10 [CGS+05]. O protótipo resultante pode ser aplicado tanto em ambientes de memória partilhada como distribuída. A avaliação realizada atesta a viabilidade da solução, apresentando resultados de desempenho interessantes para um conjunto considerável de aplicações, sem que o programador tenha de escrever código especializado. |
Identificador | |
Idioma(s) |
por |
Publicador |
Faculdade de Ciências e Tecnologia |
Direitos |
openAccess |
Palavras-Chave | #Computação paralela #Paralelismo de dados #Modelo de execução SOMD #Distribute-Map-Reduce |
Tipo |
masterThesis |