Exploração de múltiplos algoritmos de escalonamento de núcleos OpenCL para sistemas de processamento em nuvem multi-inquilino baseados em CPUS e GPUS
Abstract
Computação em nuvem provê serviços de compartilhamento de recusos computacionais
para a execução de aplicações dos inquilinos atráves de computation offloading. Para lidar
com a carga computacional os nós da nuvem podem integrar unidades de processamento
multinúcleos com unidades de processamento gráfico. Esta heterogeneidade do sistema
abrange aplicações com massivo paralelismo ao nível de instruções, threads e dados, que
podem ser exploradas através do modelo de programação OpenCL, levando a diminuição
do tempo de execução das aplicações dos inquilinos e redução da energia consumida pelo
provedor de serviços. Este trabalho propõe um framework para a execução de aplicações
OpenCL em um ambiente de nuvem multi-inquilino formado por CPU e GPU, capaz de
escalonar e escolher o melhor dispositivo de maneira transparente, sem modificação do
código-fonte , com a finalidade de melhor utilizar os recursos computacionais, reduzir o
tempo de execução e energia. Cinco algoritmos de escalonamento são explorados: First
Come First Served, Weighted Round Robin, Max Min, Min Min e First Fit. A execução de
aplicações do conjunto de benchmarks Polybench é utilizado para a avaliação do desempenho
do framework em configurações de hardware formadas por um processador Intel
Xeon Haswell combinado a NVIDIA Tesla K20m, NVIDIA Tesla K80 ou NVIDIA GeForce
1080 Ti. Dentre todas as configurações, First Fit é o algoritmo que se destaca com aceleração
média de 3,04 até 3,80 vezes, com reduções de energia de 33% em média quando
comparado a execução exclusiva da GPU.
Collections
The following license files are associated with this item: