Return to search

Análise da escalabilidade de aplicações em computadores multicore

Made available in DSpace on 2016-06-02T19:06:05Z (GMT). No. of bitstreams: 1
5312.pdf: 1746409 bytes, checksum: f1bdfc6eec1ef747466c9ed99d5d8835 (MD5)
Previous issue date: 2013-06-14 / Financiadora de Estudos e Projetos / Multicore processors allow applications to explore thread-level parallelism in order to enable improvements on the elapsed time. The sharing of the memory subsystem and the discrepancy between the speeds of processors and memory access operations, however, may entail limitations to the scalability caused by thread competition for the resources. The automatic determination of the appropriate number of threads for an application that ensure efficient executions, although widely desired, is a non-trivial problem. This work aimed to evaluate the factors limiting the scalability of OpenMP parallel applications related to the contention for shared resources in multicore processors, with the goal of identifying the characteristics of applications that limit their scalability. It was found that memory accesses are a major limitation to the performance gains with parallelism. The granularity, indicating the ratio of memory accesses to processing, has been verified as being an important performance factor of parallel executions. Estimates of granularity can be obtained from the applications' source code. Different data access modes, however, point to the need to estimate the combination of granularity with information about the data access locality to properly determine the scalability of applications. / Processadores multicore permitem que aplicações explorem paralelismo no nível de threads para habilitar melhorias no tempo de conclusão da execução. O compartilhamento do subsistema de memória e a disparidade entre as velocidades dos processadores e das operações de acesso à memória, contudo, podem implicar em limitações na escalabilidade causadas pela competição das threads pelos recursos. A determinação da quantidade apropriada de threads que garanta execuções eficientes para uma aplicação é um problema não trivial cuja obtenção automatizada é amplamente desejada. Neste trabalho, buscou-se avaliar os fatores limitantes para a escalabilidade de aplicações paralelas com OpenMP relacionados à contenção pelos recursos compartilhados em processadores multicore, com o objetivo de identificar características das aplicações que limitem sua escalabilidade. Constatou-se que os acessos à memória são a principal limitação aos ganhos de desempenho com o paralelismo. A granularidade, que indica a proporção de acessos à memória em relação ao processamento, foi verificada como sendo um indicativo importante do desempenho das execuções paralelas. Estimativas de granularidade podem ser obtidas a partir do código-fonte das aplicações. Diferentes modos de acessos aos dados apontam, todavia, para a necessidade de combinação da estimativa de granularidade com informações sobre a localidade dos acessos aos dados para determinar corretamente a escalabilidade das aplicações.

Identiferoai:union.ndltd.org:IBICT/oai:repositorio.ufscar.br:ufscar/532
Date14 June 2013
CreatorsSilva, Samuel Reghim
ContributorsGuardia, Hélio Crestana
PublisherUniversidade Federal de São Carlos, Programa de Pós-graduação em Ciência da Computação, UFSCar, BR
Source SetsIBICT Brazilian ETDs
LanguagePortuguese
Detected LanguagePortuguese
Typeinfo:eu-repo/semantics/publishedVersion, info:eu-repo/semantics/masterThesis
Formatapplication/pdf
Sourcereponame:Repositório Institucional da UFSCAR, instname:Universidade Federal de São Carlos, instacron:UFSCAR
Rightsinfo:eu-repo/semantics/openAccess

Page generated in 0.0023 seconds