Utilização Eficiente de Nuvens Computacionais como Alternativa Econômica para Computação de Alto Desempenho
Coordenadora: Lúcia Maria de Assumpção Drummond
Aplicações estratégicas para o país, como as da área de petróleo, meteorologia e biologia, dependem de computação de alto desempenho (High Performance Computing – HPC) para processar grandes quantidades de dados. Nuvens computacionais têm surgido como uma alternativa de baixo custo para HPC, oferecendo um conjunto de recursos virtualizados que podem ser rapidamente provisionados e dinamicamente escalonáveis. Porém, ainda existem diversas barreiras para seu uso. Uma delas está em fazer uso eficiente e escalável dos recursos e da alocação das máquinas virtuais (MVs), o que produz impacto direto no desempenho e no custo financeiro. Além disso, as nuvens são propensas a falhas e para satisfazer os acordos de nível de serviço, a tolerância a falhas de MVs em nuvens é uma grande preocupação.
Um outro aspecto importante das nuvens no contexto de computação de alto desempenho é a oferta de Graphics Processing Units (GPUs) nesses ambientes. GPUs provaram ser uma plataforma poderosa e eficiente para acelerar uma grande classe de aplicativos com uso intensivo de computação. Por esse motivo, muitos datacenters de larga escala são baseados em arquitetura heterogênea, que inclui CPUs e GPUs, para atender aos requisitos de alto desempenho e throughput de dados. Seguindo essa tendência, as GPUs também estão sendo usadas em nuvens computacionais. A exploração de GPUs nas nuvens, por meio da virtualização da GPU, permite que dispositivos físicos sejam logicamente desacoplados de um nó computacional e compartilhados por qualquer aplicativo, resultando em redução de custos monetários, economia de energia e mais flexibilidade.
Nesse cenário, o compartilhamento eficiente de uma GPU por diferentes aplicativos é um recurso indispensável. A fim de permitir melhor aproveitamento do uso das GPUs, é necessário tratar a questão da concorrência e escalonamento de kernels neste ambiente. Nesse contexto, este projeto trata das questões de gerências de recursos, CPUs e GPUs.