Inscreva-se no The Softtek Blog
A Universidade de Cambridge, a Intel Corporation e a Dell Technologies têm vindo a tentar desenvolver a computação de alto desempenho (HPC) há já algum tempo. Hoje em dia, continuam a colaborar para trazer tecnologias exascales para o mundo.
Este tipo de supercomputação refere-se a sistemas de computação de altíssima potência. São sistemas capazes de resolver problemas muito complexos e exigentes que requerem o processamento de uma grande quantidade de dados e informações.
Esta tecnologia está actualmente no centro dos estudos de muitos países a fim de progredir no progresso tecnológico, sendo um recurso estratégico fundamental. Dos Estados Unidos à China, incluindo a Europa, estão a tentar desenvolver os seus próprios sistemas exascale.
Estudos mostram que estes sistemas são 1000 vezes mais rápidos do que os actuais sistemas HPC, de modo que podem efectuar um trilião de cálculos por segundo. Por outras palavras, o exascale proporcionará um aumento dramático do poder computacional. O impressionante número de cálculos que estes sistemas podem realizar traz consigo grandes avanços para a modelação de padrões, a avaliação de diferentes medicamentos em caso de pandemia ou a concepção de novos processos de energia limpa, por exemplo.
No entanto, este crescimento no desempenho do software implica mudanças abruptas nas arquitecturas de hardware, impulsionadas pelo fim da escala de Dennard e pelo abrandamento da lei de Moore.
Face a estes grandes avanços, as novas perspectivas dos ecossistemas de software são críticas em relação às equipas de desenvolvimento, uma vez que devem ser as correctas e ter incentivos significativos para tirar partido das novas possibilidades tecnológicas.
O aspecto mais importante a considerar é a arquitectura de software e as oportunidades de modernização de aplicações. Por outras palavras, todos estes grupos e projectos exascalistas devem ter em conta que o aspecto chave é o novo software apoiado em hardware apropriado.
Portanto, a obtenção de um desempenho eficaz nestas novas arquitecturas requer um maior desenvolvimento no campo da refactoring e tuning. Também, para este tipo de computação, são necessárias arquitecturas alojadas em CPUs multi-core e múltiplas GPUs, o que significa arquitecturas complexas. Por sua vez, novos algoritmos altamente concorrentes precisam de ser desenvolvidos e codificados, o que equivale a criar novos modelos de programação com novas camadas de abstracção, a fim de obter um bom desempenho.
Além disso, com a presença da inteligência artificial (IA) estão a provocar grandes mudanças no software HPC tradicional, de modo que novos produtos estão a ser adaptados para apoiar a IA, a aprendizagem de máquinas e, em geral, a análise de dados.
O crescimento maciço de dados está a impulsionar novas tecnologias para fazer uso intensivo de dados. Além disso, a transformação digital está a avançar a passos largos, pelo que a quantidade de trabalho de HPC e inteligência artificial está a aumentar exponencialmente a cada segundo.
Além disso, análises avançadas de dados, IoT, simulações, e várias cargas de trabalho de modelação de dados resultam num fluxo de trabalho crítico para várias empresas. Este fluxo de trabalho precisa, portanto, de ser gerido a um novo nível de escala e em tempo real: exascale.
Mas todas estas necessidades e novas tendências requerem um redesenho total das arquitecturas informáticas, software e armazenamento de dados.
O benefício mais notável da escala é sem dúvida o grande número de operações computacionais por segundo que pode realizar, o que corresponde a pelo menos um exaflop. Como mencionado acima, este tipo de computação permite-nos modelar, simular e analisar todos os dados que nos rodeiam, resolvendo os desafios mais complexos que surgem no mundo que conhecemos hoje.
Além disso, traz consigo um importante avanço no armazenamento e serviço de informação, graças à IA. Acrescenta a capacidade de responder a perguntas complexas através da organização de dados com uma interconexão concebida para ser flexível e ampla. Implica também um armazenamento poderoso e rentável, concebido para cargas de trabalho pesadas.
Tudo isto traz a próxima geração de aplicações para inovação no campo do desenvolvimento de software AI e HPC, para que se possam adaptar às mudanças e avanços da digitalização.
Um dos principais grupos de investigação nesta tecnologia é o Cambridge Open Exascale Lab, composto principalmente por cinco projectos que definem a abordagem inicial ao exascale:
Este é o modelo de programação escalável da Intel, centrado em sistemas heterogéneos para facilitar a programação e execução de código em diversas arquitecturas informáticas. OneAPI é responsável pela adaptação das aplicações existentes à escala e pela preparação do código para implantação.
O projecto Scientific OpenStack é responsável pela criação de um ambiente suficientemente poderoso para implementar, gerir e operar sistemas HPC. Também apoia implantações no local, baseadas em nuvens, e híbridos. Isto permite que as implantações de aglomerados façam funcionar determinados fluxos de trabalho ao mesmo tempo que aproveitam tecnologias líderes em plataformas exascalesas.
Está a ser realizado um estudo sobre Ethernet de baixa latência, comparando diferentes fornecedores de soluções de HPC, permitindo avaliar uma gama de aplicações para diferentes escalas.
A investigação está a utilizar diferentes bancos de ensaio de armazenamento de estado sólido em grande escala que, combinados com motores de processamento e software gráfico, permitem a representação de conjuntos de dados em tempo real. Estas técnicas resultarão em ferramentas fáceis de utilizar e de implementar.
A concepção a partir do zero de sistemas de ficheiros implementados em dispositivos de armazenamento está também a ser investigada, para se concentrar no armazenamento de objectos DAOS de código aberto da Intel.
Assim, através destes projectos do Cambridge Open Exascale Lab e outros, levados a cabo por diferentes países, o futuro do exascale está a ser construído, assumindo hoje os grandes desafios da gestão de dados. Do mesmo modo, a China é outro dos grandes países dedicados à construção deste tipo de supercomputadores de vanguarda.
Actualmente, todas as equipas concentradas no desenvolvimento de supercomputadores exíguos estão a procurar melhorar uma miríade de sectores para análise de dados, optimização e avanço da IA.
Simultaneamente, estão a ser desenvolvidos vários componentes para exascale, compatíveis para diferentes versões e suportes, a fim de se integrarem perfeitamente e assegurarem o bom funcionamento desta nova tecnologia.
No entanto, a colaboração entre diferentes equipas é essencial para desenvolver as aplicações e o software adequados para implementar estes projectos. O desenvolvimento e a sustentabilidade do software é fundamental, pelo que os diferentes projectos devem ter uma estratégia de desenvolvimento bem definida. Isto sublinha o papel essencial do software, que é a base desta nova tecnologia.
Finalmente, estes projectos devem procurar alavancar a ciência cognitiva para fomentar a criatividade e a inovação em novos sistemas exascale. O resultado é uma tecnologia com um carácter mais personalizado e único, que é essencial para trabalhar em conjunto com inteligência artificial.