Uma heurística de escalonamento adaptativa à disponibilidade da informação para aplicações bag-of-tasks data-intensive em grids computacionais. - ASSIS, Leonardo de. (2009)
A tecnologia de grids foi criada com o objetivo de facilitar o compartilhamento de recursos entre indivíduos que estão vinculados a diferentes domínios administrativos. Nos últimos anos, o uso de grids computacionais está cada vez mais comum devido ao grande poder computacional que esta tecnologia pode prover a um baixo custo. Devido a isso, a execução de aplicações paralelas que processam uma grande quantidade de dados (dataintensive) está cada vez mais comum neste tipo de plataforma. Uma aplicação paralela pode ser vista como uma coleção de tarefas que podem ser executadas em paralelo. Para algumas destas aplicações, essas tarefas são independentes e podem ser escalonadas para execução paralela em qualquer ordem. Este tipo de aplicação paralela é referenciada na literatura como aplicações Bag-of-Tasks (BoT). Com o intuito de escalonar tarefas em recursos de uma maneira eficiente, escalonadores de aplicações em grid utilizam heurísticas de escalonamento. As heurísticas de escalonamento existentes podem ser classificadas em duas abordagens: i) heurísticas bin-packing, e ii) heurísticas baseadas em replicação. A primeira abordagem requer informação completa e precisa sobre o ambiente de execução e a aplicação. A segunda abordagem não utiliza informação alguma, mas, ao invés disso, ela aplica o princípio da replicação de tarefas para atingir um bom desempenho. Porém, ambas abordagens têm desvantagens; obter informação completa e precisa sobre o ambiente de execução e a aplicação não é sempre possível em um ambiente de grid computacional, enquanto que a redundância das heurísticas baseadas em replicação ocasiona no desperdício de recursos. Em um trabalho recente, foi investigado que apesar de que em um ambiente de grid a informação precisa é difícil de se obter, o acesso a ela não é impossível. Na prática, parte da informação pode ser obtida usando serviços que coletam informação sobre o ambiente de execução e publicada em serviços de informação do grid. Aquele mesmo trabalho mostrou que é possível reduzir o custo de execução de aplicações CPU-intensive, mantendo a mesma eficiência, usando qualquer informação que esteja disponível. Com base no pressuposto daquele trabalho, este trabalho apresenta uma heurística de escalonamento para aplicações BoT data-intensive, que é adaptativa à disponibilidade da informação, chamada de Adaptive Data-Intensive. Os resultados obtidos pela heurística Adaptive Data-Intensive mostraram que o uso racional da informação que estiver disponível leva a uma redução no tempo de execução da aplicação e no desperdício dos recursos.