Computação de Alto Desempenho: afinal, você vai precisar dela?

À medida que custos caem e casos de uso se multiplicam, HPC atrai novos adotantes de todos os tamanhos. Opções de expansão incluem serviços em cloud

Author Photo
5:18 pm - 07 de outubro de 2019

No mundo atual de dados, a computação de alto desempenho (HPC) está emergindo como a plataforma ideal para empresas que buscam obter insights profundos sobre áreas tão diversas quanto genômica, química computacional, modelagem de riscos financeiros e imagens sísmicas. Inicialmente adotada por pesquisadores que precisavam realizar cálculos matemáticos complexos, a HPC agora está chamando a atenção de um número maior de empresas, abrangendo uma variedade de campos.

“Os ambientes que prosperam na coleta, análise e distribuição de dados – e dependem de sistemas confiáveis ​​para suportar fluxo de trabalho simplificado com imenso poder computacional – precisam do HPC”, diz Dale Brantly, diretor de engenharia de sistemas da Panasas, um fornecedor de sistema de armazenamento de dados HPC.

Embora a adoção por pequenas e médias empresas permaneça relativamente escassa, a tecnologia possui um grande potencial para organizações dispostas a investir na tecnologia e na experiência da equipe.

Normalmente, os casos de uso da HPC estão focados em algum tipo de simulação. “A simulação do fluxo de ar sobre uma asa, combustão em um motor, sistemas climáticos planetários, uma reação nuclear ou a avaliação de um portfólio de investimentos”, diz Kevin Kissell, diretor técnico de HPC e computação quântica no escritório do CTO do Google Cloud . Outros casos de uso têm como alvo objetivos analíticos, como medir o ROI da publicidade ou avaliar o desempenho de uma unidade de negócios. Outros casos de uso ainda podem ser classificados como translacionais ou transformacionais. “Como renderização de filme e vídeo”, observa ele.

Computação de alto desempenho sem o supercomputador

Um equívoco defendido por muitos líderes empresariais e de TI é que todos os sistemas HPC são baseados em supercomputadores. De fato, enquanto supercomputadores produzidos por empresas como Atos, IBM, HPE/Cray e Fujitsu estão no coração de vários sistemas HPC especializados, uma abordagem mais amplamente usada é integrar vários computadores pequenos em um cluster interconectado para fornecer recursos de HPC. Sob esse arranjo, cada computador dentro do cluster serve como um nó. Cada nó geralmente é equipado com vários processadores, chamados núcleos de computação, que lidam com tarefas de computação. Os processadores, as unidades de processamento gráfico (GPU) e os recursos de memória em cada nó são interconectados para criar um sistema HPC.

Como o custo de obter e operar um supercomputador e seu software personalizado pode facilmente chegar aos milhões de dólares, a tecnologia permanece muito além do alcance financeiro da maioria das empresas. HPCs do tipo cluster, usando computadores interconectados relativamente baratos e executando software de prateleira, geralmente são mais acessíveis para implantar e operar. Mesmo assim, mesmo um HPC baseado em cluster de tamanho modesto pode representar um investimento significativo para a maioria das empresas, particularmente aquelas com apenas necessidades limitadas de HPC.

Esta situação está mudando agora. As empresas que desejam obter acesso ao HPC sem interromper seus orçamentos de TI agora têm a opção de recorrer a serviços de nuvem pública, como Google Cloud, Microsoft Azure, Amazon Web Services (AWS) e IBM Cloud.

“Esses serviços permitem que as empresas tenham acesso aos recursos da HPC para atender às suas necessidades de negócios sem investir pesadamente na infraestrutura de hardware de um cluster de HPC”, diz Maksym Pavlov, líder técnico de redes da Ciklum, uma empresa de serviços digitais e engenharia de software. “O surgimento da nuvem meio que nivelou o campo de atuação, em certa medida, entre pequenas e grandes empresas”, acrescenta David Turek, vice-presidente de computação em escala internacional da IBM.

Movendo-se para o HPC na nuvem

A Universidade da Carolina do Norte em Chapel Hill (UNC-Chapel Hill) confia há muito tempo em seu cluster local de computação de alto desempenho (HPC) para apoiar atividades de pesquisa em várias áreas científicas, de engenharia e médicas. No entanto, à medida que as necessidades de computação em pesquisa continuam crescendo, a demanda dos usuários começa a superar os recursos e a capacidade de computação do sistema atual. Em vez de expandir o investimento existente em HPC, a universidade decidiu recorrer à nuvem para fornecer aos usuários um ambiente de HPC sob demanda.

A abordagem mostrou-se econômica e altamente flexível. “Com a nuvem, podemos provisionar a computação necessária para realizar o trabalho solicitado e calculá-la exatamente pelo tempo necessário para o trabalho”, diz Michael Barker, CIO interino da UNC-Chapel Hill. “É uma maneira muito eficaz de fornecer os requisitos para executar o trabalho computacional”.

A mudança para a nuvem foi necessária e bem-vinda, diz Jeff Roach, pesquisador sênior da UNC-Chapel Hill. “Temos um cluster local muito tradicional”, diz ele. No entanto, com o passar do tempo, ficou aparente que o sistema estava gradualmente deixando de acompanhar o número crescente de usuários que exigiam poder computacional de ponta e desempenho mais rápido. “Estamos descobrindo que nosso cluster local funciona muito bem para as pessoas para as quais foi projetado, mas alguns de seus casos extremos estão se tornando menos críticos”, diz ele.

Com os casos de uso exigentes em computação se tornando rapidamente a norma, a UNC-Chapel Hill começou a trabalhar com o Google Cloud e o provedor de software de simulação e análise Techila Technologies para mapear sua jornada em HPC na nuvem. O primeiro passo após o planejamento foi uma prova de avaliação do conceito. “Pegamos um dos pesquisadores no campus que estava executando apenas uma tonelada de alta memória e computação interativa e tentamos testar sua carga de trabalho”, diz Roach. O resultado foi um sucesso não qualificado, observa ele. “O pesquisador realmente gostou; ele fez o seu trabalho.” A mesma tarefa poderia levar até uma semana para ser executada no cluster HPC da universidade. “Ele conseguiu fazer muito de sua corrida em apenas algumas horas”, diz Roach.

Do outro lado do Atlântico, a Universidade de York também decidiu adotar uma abordagem HPC baseada em nuvem. James Chong, um membro da Royal Society Industry e professor do Departamento de Biologia da Universidade de York, observa que o HPC é amplamente utilizado por professores e estudantes em departamentos de ciências como biologia, física, química e ciência da computação, além de linguística e várias outras disciplinas.

O departamento de Chong está atualmente usando o Google Cloud para analisar dados de sequência de DNA. “Especificamente, meu grupo está interessado em microbiomas, comunidades microbianas mistas envolvidas na conversão de resíduos – no nosso caso, lodo de esgoto – em biogás”, explica ele. “Usamos o HPC para serrar sequências curtas de DNA em um metagenoma e depois separar os genomas dos diferentes micróbios, para que possamos entender como esses organismos respondem às mudanças nas condições de crescimento”.

Como seus colegas da UNC-Chapel Hill, Chong aprecia a força e a flexibilidade que um serviço em nuvem da HPC pode oferecer. “Nosso HPC precisa ser capaz de lidar com diversos requisitos – alguns usuários querem muitos processadores, outros precisam de máquinas com muita memória”, diz ele.

O HPC em nuvem que a universidade usa também tem a capacidade de se adaptar às necessidades em evolução. “Muitos de nós estamos começando a usar técnicas de aprendizado de máquina e queremos poder aproveitar diferentes arquiteturas”, observa Chong. “A grande variedade de usuários [da universidade] significa que também precisamos de acesso a uma variedade de pacotes diferentes”, acrescenta ele. Como a maioria dos HPCs em nuvem, o serviço que York usa permite que vários tipos de pesquisadores alternem entre ferramentas de software com facilidade e rapidez, sem perder tempo com problemas de aquisição, implantação ou configuração.

HPC com um supercomputador

Embora os serviços HPC na nuvem ofereçam certas vantagens, nem sempre é a melhor ou mais lógica opção para as empresas preocupadas com segurança e privacidade. “Há uma grande sensibilidade sobre a localização dos dados”, observa Turek. “Especialmente quando você olha para as restrições do GDPR na Europa, por exemplo.” A GDPR é o Regulamento Geral de Proteção de Dados, a lei de privacidade da União Europeia.

Abordando a privacidade e a necessidade de enorme poder computacional, a Universidade de Miami recentemente optou por investir em um novo sistema HPC local, baseado em supercomputador. Mais criticamente, a universidade acredita que projetos de pesquisa com conjuntos de dados multidimensionais maciços podem ser executados muito mais rapidamente em supercomputadores de alto desempenho especialmente projetados.

Em agosto passado, a escola apresentou seu novo supercomputador IBM Triton, baseado nos servidores Power Systems AC922. Mais de 2.000 estudantes e professores já estão usando o sistema para trabalhar em projetos como previsão climática, genômica, bioinformática, visão computacional e trabalho de IA, observa Nicholas Tsinoremas, diretor do Centro de Ciência da Computação da Universidade de Miami e vice-reitor de dados e pesquisa em computação.

A implantação, apesar de bem-sucedida, encontrou alguns obstáculos iniciais que quase qualquer adotante de HPC pode esperar, independentemente de seu tamanho, campo ou necessidades de computação. “As questões de migração são sempre um problema”, diz Tsinoremas. A questão do treinamento e reciclagem do usuário também teve que ser abordada. “A integração do novo sistema com os sistemas de armazenamento herdados foi outro desafio”, observa ele.

Todas essas preocupações destacam o fato de que, se um sistema HPC é baseado no local ou na nuvem, a adoção sem dor requer muito planejamento e preparação. “A experiência interna é necessária e a instituição deve ter um plano”, alerta Tsinoremas. Também é importante entender a natureza e os requisitos das cargas de trabalho. “Em outras palavras, os adotantes precisam entender quais problemas eles estão tentando resolver e como esperam que a HPC os ajude a resolvê-los”, diz ele.

Começando com os workloads em HPC

Outra dica é a importância de selecionar as ferramentas corretas de gerenciamento de recursos, que permitem a uma organização acessar e otimizar os ambientes HPC. “Quer você esteja comprando um ambiente de hardware HPC tradicional, aproveitando o HPC na nuvem ou uma mistura de ambos, é fundamental selecionar o gerenciador de carga de trabalho HPC correto para seus tipos de trabalho e requisitos de taxa de transferência”, diz Jérémie Bourdoncle, diretora sênior de gerenciamento de produtos na Altair, um fornecedor de software de simulação e outras ferramentas e serviços relacionados a HPC. Um gerente de carga de trabalho pode automatizar o agendamento de tarefas, bem como as funções de gerenciamento, monitoramento e relatório.

Kissell sugere uma estratégia de adoção focada no conhecimento, simplicidade, opções e cautela. “Pode ser uma longa jornada, então planeje sua viagem, mas dê a si mesmo oportunidades para corrigir o curso”, aconselha. Escolha um caso de teste simples, mas representativo, e onde o conhecimento e as percepções adquiridas com as simulações ou análises de HPC possam ser claramente identificados. “Em seguida, selecione uma pequena lista de pacotes de software projetados para a sua classe de problemas e tente-os.”

 

Newsletter de tecnologia para você

Os melhores conteúdos do IT Forum na sua caixa de entrada.