Caracterização de speedup de aplicação: modelagem de sobrecarga de paralelização e variações de tamanho de problema e número de núcleos
Computação Paralela, Arquitetura Multi-core, Caracterização de Aplicação, Modelagem de Performance.
Para fazer uso eficiente de processadores multi-core, é importante entender o comportamento de desempenho de aplicativos paralelos. A modelagem desse comportamento pode permitir o uso de abordagens on-line para otimizar o rendimento ou a energia, ou até mesmo garantir um QoS mínimo. Modelos precisos evitariam ter que testar diferentes configurações de tempo de execução, o que causa sobrecarga. Ao longo dos anos, muitos modelos de aceleração foram propostos. A maioria deles é baseada na lei de Amdahl ou na lei de Gustafson. No entanto, muitos deles fazem considerações como uma fração paralela fixa ou uma fração paralela que varia linearmente com o tamanho do problema e a sobrecarga de paralelização inexistente. Embora tais modelos auxiliem no entendimento teórico da computação paralela, essas considerações não se sustentam em ambientes reais, o que torna a modelagem inadequada para a caracterização precisa de aplicações paralelas. O modelo proposto neste artigo estima a aceleração levando em conta a variação de sua fração paralela de acordo com o tamanho do problema, o número de núcleos utilizados e a sobrecarga causada pela paralelização. Usando quatro aplicativos do conjunto de benchmarks PARSEC, o modelo proposto foi capaz de estimar a aceleração de forma mais precisa do que outros modelos da literatura recente.