O seguinte é de Jorge Zuniga, um engenheiro civil independente focado em encontrar receitas matemáticas. Jorge tem trabalhado com Jordan para aproveitar servidores e armazenamento em nosso laboratório para fazer avanços fundamentais em matemática. Ficamos entusiasmados em participar desta pesquisa com Jorge e nosso pequeno vídeo teaser nas redes sociais de algumas semanas atrás obteve um tremendo apoio.
Ver este post no Instagram
Desde aquele vídeo, continuamos trabalhando com Jorge para testar os modelos em estações de trabalho e, em seguida, executá-los integralmente no servidor Supermicro E1.S , equipado com SSDs KIOXIA XD7P E1.S. A densidade da plataforma e a capacidade de manter tantos discos próximos à CPU fazem dela uma ótima plataforma para esse tipo de pesquisa matemática.
Temos orgulho de apresentar aqui as descobertas de Jorge. –Brian Beeler
O controle de qualidade por meio de testes de estresse representa uma política saudável para determinar a capacidade real de uma determinada instalação de hardware. A análise de números é uma prática generalizada para a implementação destas políticas. Em particular, ao avaliar o desempenho real do seu sistema com qualidade profissional, diversas ferramentas estão disponíveis para fornecer resultados precisos.
Um deles, desenvolvido na Áustria e um dos meus favoritos, é o BenchMate de Matthias Zronek , que contém vários testes de estresse exigentes para SSDs, memória, GPUs e CPUs. Outros pacotes de computação de alto desempenho, como o GPUPI de Zronek, calculam a constante π usando a GPU. O cálculo das casas decimais de π é um teste padrão e comum que frequentemente aparece na imprensa científica especializada e em algumas redes sociais voltadas para a matemática quando o recorde de casas decimais conhecidas é quebrado. Hoje, são conhecidas 100 trilhões de casas decimais (10^14) de π.
No BenchMate, também existe o y-cruncher de Alex Yee , uma plataforma que permite o cálculo multicore de diversas constantes matemáticas, incluindo π, com altíssima precisão, fornecendo um número enorme de casas decimais limitado apenas pela capacidade do sistema. Nesse caso, várias estratégias podem ser adotadas, como escolher uma constante e sobrecarregar o sistema para calcular um número suficientemente grande de casas decimais, registrando o tempo decorrido. Isso fornece uma excelente métrica para classificar e comparar o desempenho de diferentes configurações isoladas.
Além disso, se houver capacidade instalada suficiente, é possível executar uma configuração de sistema para quebrar o número conhecido de casas decimais de uma determinada constante, um desafio assumido com grande sucesso pela StorageReview. Conforme relatado na nota de dezembro de 2023, trabalhei com a equipe da StorageReview para melhorar o número conhecido de casas decimais para diversas constantes matemáticas. Não apenas conseguimos bater esses recordes, como o fizemos no menor tempo possível. Historicamente, era comum levar semanas ou meses para realizar essa tarefa. Trabalhando com a StorageReview, conseguimos isso para todas as constantes em apenas algumas horas e, em alguns casos, dobrando o número de casas decimais conhecidas. A tecnologia disponível na StorageReview possibilitou reduções de tempo em várias ordens de magnitude. Um resumo desses resultados e seus detalhes podem ser encontrados aqui.
Resultados recordes estabelecidos por y-cruncher. Para uma lista completa dos recordes estabelecidos por y-cruncher, visite numberworld.
Esta nota refere-se precisamente a estes resultados. Para conseguir um registro de casas decimais, é necessário atuar em três camadas.
Começando pela camada inferior, a terceira e última, é a configuração de hardware; isso significa uma instalação robusta de SSD, alta capacidade de RAM e uma CPU multicore de última geração. Muitos desses detalhes e a configuração aplicada podem ser vistos online aqui.
A segunda camada, ou camada intermediária, compreende o software, ou seja, o y-cruncher, que constitui a ligação entre as camadas inicial e final. Para aumentar seu desempenho, o y-cruncher mantém diferentes executáveis de átomos, dependendo do tipo de CPU multicore no sistema. O átomo correto para execução é escolhido automaticamente no momento da execução. O testador de benchmark permite ao usuário selecionar uma constante e aplicar o algoritmo correspondente. Este algoritmo pode ser integrado diretamente ao sistema ou, caso contrário, utiliza arquivos de configuração personalizados para implementação. Detalhes sobre a implementação e o uso do y-cruncher podem ser encontrados no numberworld . O software y-cruncher está em constante desenvolvimento, acompanhando as novas tecnologias de hardware.
A primeira, ou camada inicial, é o algoritmo, ou melhor, a fórmula matemática implementada para calcular a constante que serve de entrada para o y-cruncher. Cada constante pode ser representada por um número infinito de fórmulas, quase todas com baixo desempenho, no sentido de que muitas operações matemáticas são capazes de fornecer apenas alguns dígitos corretos.
Do outro lado está a categoria de fórmulas eficientes. Destas, destaca-se a série hipergeométrica. Dentro dessas séries há algumas que são adequadas para quebrar recordes, sendo capazes de fornecer muitos decimais em um período de tempo relativamente curto. Na verdade, a fórmula primária para calcular π, conhecida como algoritmo de Chudnovsky, é uma das fórmulas hipergeométricas.
Trabalhando em estreita colaboração com a equipa da StorageReview, assumimos também o desafio de procurar estas fórmulas, ou seja, atuar na primeira camada para obter uma série hipergeométrica muito eficiente que permita encontrar a fórmula mais rápida conhecida. Como isso é feito? Uma configuração multicore é necessária, esperançosamente com o maior número possível de núcleos físicos, para aplicar a computação distribuída, uma vez que o processo exige muito da CPU, mas pode ser facilmente paralelizado com uma grande redução dos tempos de computação. A nova fórmula, se bem-sucedida, será usada para quebrar o recorde de casas decimais conhecidas para aquela constante.
Utilizamos um processador AMD Theadripper PRO 5995WX de 64 núcleos e preparamos scripts de código no PARI-GP, uma plataforma da Universidade de Bordéus (França) para Teoria dos Números, e implementamos um algoritmo de busca. O objetivo é identificar um conjunto de inteiros de 64 bits que, quando inseridos nos parâmetros de uma série hipergeométrica específica com uma estrutura fixa conhecida, resultem na constante que procuramos. Para isso, utilizamos o algoritmo LLL — um componente interno do PARI-GP — que busca relações lineares inteiras entre valores de ponto flutuante de precisão múltipla. Mais detalhes matemáticos podem ser encontrados em mathoverflow.net.
Começamos primeiro com a constante ζ(5) = 1.036927755143… já que ela não tem uma fórmula conhecida muito eficiente, mas acabou se revelando muito evasiva. Não conseguimos encontrar uma fórmula conhecida além da série hipergeométrica única, que, aliás, não é rápida o suficiente. Depois de algumas semanas sem sucesso, mudamos para uma série hipergeométrica para logaritmos.
Neste caso, tivemos sucesso, conseguimos encontrar os algoritmos mais rápidos conhecidos para as constantes fundamentais log(2), log(3) e log(5), conforme descrito neste blog.
Log(2) Pesquisa de fórmula. Todos os 64 núcleos físicos estão ocupados.
Captura de tela. Série Log(2) mais rápida encontrada.
Log (2) Fórmula StorageReview G2 encontrada
Depois de descobrir as fórmulas, preparamos os scripts para o y-cruncher. Jordan Ranous, da Storagereview, projetou a instalação para superar o número de casas decimais conhecidas. Neste caso, uma configuração baseada em 2x Intel Xeon Platinum 8460H e 512 GB de SK Hynix RAM.
Essa configuração dobrou o recorde de casas decimais do log(2) para 3 trilhões de dígitos em apenas 42.7 horas. Um segundo novo algoritmo – a fórmula G2 abaixo, também encontrada no StorageReview Lab – foi aplicado para verificar os decimais, o que levou 58.3 horas de tempo de espera. De referir que o recorde anterior de 2021 demorou 98.9 e 61.7 dias para o cálculo e verificação de 1.5 biliões de dígitos decimais, respetivamente. Isto significa uma melhoria de eficiência de cerca de 50 vezes em 3 anos.
Conseguimos executar todas as etapas necessárias para produzir resultados úteis. Uma nova fórmula para uma constante matemática, log(2), foi descoberta usando uma instalação especialmente adaptada. Esta fórmula foi então aplicada a uma configuração personalizada para quebrar o recorde do número de casas decimais conhecidas para esta constante específica.
As instalações do StorageReview tornaram possível cobrir todo o processo de preparação de testes de bancada com base em cálculos numéricos que colocam um sistema sob grande estresse. Esses experimentos testaram com sucesso SSD, RAM e CPU ao extremo.
– Jorge Zuñiga





Amazon