Escalonamento de aplicações que processam grandes quantidades de dados em grids computacionais. - SANTOS NETO, Elizeu Lourenço dos. (2004)
Aplicações que processam grandes quantidades de dados demandam grandes transferências de dados quando executadas em grids computacionais. Estas transferências têm um alto custo associado. Portanto, considerar as transferências de dados é fundamental para se obter escalonamentos eficientes para tais aplicações. Além disso, em ambientes heterogêneos como os grids, as heurísticas que produzem escalonamentos eficientes tipicamente usam informação dinâmica sobre o grid e as aplicações (disponibilidade de rede e CPU, tempo de execução das tarefas, etc). Porém, estas informações são, em geral, difíceis de se obter com precisão. Embora existam escalonadores que alcançam bom desempenho sem usar informações dinâmicas, eles não são desenvolvidos para considerar o impacto das transferências de dados. Neste trabalho apresentamos Storage Affinity, uma nova heurística de escalonamento para aplicações do tipo Bag-of-Tasks que processam grandes quantidades de dados sem depender de informação de difícil obtenção. Além disso, o ambiente de execução considerado é um grid computacional. Storage Affinity explora os padrões de reutilização de dados, comuns em muitas aplicações, pois isto permite considerar as transferências de dados sem usar informações dinâmicas sobre os recursos, reduzindo o tempo total de execução da aplicação. Através do uso de uma estratégia de replicação de tarefas, Storage Affinity efetua escalonamentos eficientes sem depender de informação dinâmica. Os resultados mostram que Storage Affinity pode alcançar uma performance, em média, melhor do que os escalonadores estado-da-arte que dependem de informação, mesmo em situações onde tais escalonadores usam informação perfeita. Em contrapartida, há um acréscimo no consumo de ciclos de CPU (em média, ) para alcançar este desempenho devido a replicação de tarefas.