HPC como estratégia para alocar demandas de computação em nuvem


High Performance Computing (HPC) é a maneira de orquestrar uma frota de servidores para executar tarefas que demandam muito processamento computacional.  Para entender melhor do que se trata, temos que voltar em 1979, quando a Linpack (empresa que desenvolveu uma biblioteca de software para executar álgebra linear numérica) no seu manual do usuário enviou também uma lista dos computadores mais potentes do mundo.  

Até que, em 1993, no Oitavo seminário de Supercomputadores, a lista TOP 500 dos computadores mais potentes do mundo teve a sua primeira edição. Desde então, aplicações complexas como cálculo de vetores paralelos para túneis de vento, pesquisa numérica de problemas em física computacional, simulação de desastres naturais, simulações bélicas, sequenciamento genético, cálculo de risco e simulações financeiras têm sido calculadas a partir desses supercomputadores.

HPC no setor financeiro

O mercado financeiro necessita de HPC em diversos momentos, como no cálculo de fundos quantitativos, processamento em lote de consolidação de dados, análises de risco e preditiva de ativos, detecção de fraude, e, mais recentemente, a Revisão Fundamental do Registro de Negociação (FRTB, na sigla em inglês). Para a execução de todas essas cargas de trabalho, porém, há uma lacuna entre capacidade computacional disponível e o tempo necessário para executar essas tarefas. O Custo Total de Propriedade (TCO, na sigla em inglês) para esses equipamentos é muito alto, por isso, uma alternativa que vem ganhando popularidade é o HPC na nuvem.

O impulso gerado pela Nuvem

Provedores como AWS, Microsoft e Google oferecem seus frameworks, produtos e soluções em HPC. O principal benefício da execução de cargas de trabalho HPC na nuvem é a capacidade de alocar grandes quantidades de computação sob demanda, sem a necessidade de se comprometer com os custos iniciais e contínuos de um grande investimento em hardware. Isso evita o provisionamento prévio de capacidade baseado em alguma estimativa do futuro pico de demanda. Além disso, como a infraestrutura da nuvem é cobrada pelo consumo de horas de CPU, é possível concluir a mesma carga de trabalho em menos tempo, pelo mesmo preço, simplesmente escalando a capacidade.

O FRTB aborda as deficiências da atual estrutura de risco de mercado (Basileia 2.5), com o objetivo de tornar o sistema financeiro mais robusto, sem inibir indevidamente a eficiência do mercado.

O regulamento institui algumas importantes alterações tais como:

  • Criação de um padrão básico que todos os bancos devem adotar;
  • Requisitos mais rigorosos para obter aprovação de uso de modelos internos
  • Estrutura aprimorada de governança de risco.

Uma das funções que devem ser realizadas diariamente pelos bancos é a de Expected Shortfall ou Conditioned Value at Risk (CVaR), que estima a perda potencial máxima de um investimento para um período de tempo. Ou seja, todos os bancos deverão calcular o potencial risco de “quebrar” diariamente para evitar algo semelhante aos acontecimentos entre 2007-2009.

Para o cálculo do CVaR há três métodos, o histórico, o de variância-covariância e as simulações Monte Carlo. O método mais comum usando HPC são as simulações Monte Carlo, que reproduzem várias fontes de incertezas que afetam o valor do instrumento, portfólio ou investimento em questão, para então calcular um número representativo, dado os possíveis valores dos insumos adjacentes. Para essas análises são necessárias centenas de milhares e até milhões de horas de processamento, só permitidas com o uso da nuvem por conta da escala. Imagine que todos os bancos do mundo necessitarão realizar essas análises diariamente.

Embora essas novas regras não entrem em vigor até janeiro de 2022, a natureza complexa dessas novas regras significa que os bancos têm muito trabalho a fazer, por isso precisam iniciar sua implementação eminentemente.

Desafios para o HPC

  • Crescimento
  • Acompanhamento da demanda computacional
  • Migração de hardware legado
  • Custo de maneira geral
  • Previsibilidade de cargas de trabalho
  • Flexibilidade e escalabilidade da solução
  • Alocação de custos

Conclusão

As estratégias podem ser locais, híbridas ou completamente na nuvem. E os engenheiros que vão executá-las devem procurar o melhor custo, a melhor eficiência computacional e a atenção sempre aos tipos de aplicação, entendendo todos os componentes que fazem parte dos cálculos (processamento, largura de banda, alto nível de concorrência, velocidade de acesso aos dados e estratégias de cache) para atender ao regulatório, conseguindo vantagem competitiva frente aos concorrentes.

Rafael Suguihara é arquiteto sênior de Cloud Solutions na GFT Brasil