Dobramos o recorde de casas decimais para log(2) para 3 trilhões de dígitos em apenas 42.7 horas, uma melhoria de eficiência de cerca de 50 vezes em 3 anos.
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 a trabalhar com Jorge para testar modelos em estações de trabalho e depois executá-los integralmente no Servidor Supermicro E1.S, preenchido com SSDs KIOXIA XD7P E1.S. A densidade da plataforma e a capacidade de manter tantos drives 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, é Matthias Zronek BenchMate, 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 tem aparecido frequentemente na imprensa científica especializada e em algumas redes sociais especializadas em matemática quando o recorde de decimais conhecidos é quebrado. Hoje, 100 trilhões de casas decimais (10 ^ 14) de π são conhecidas.
No BenchMate, também há O triturador de Alex Yee, uma plataforma que permite a computação CPU-Multicore de muitas constantes matemáticas, incluindo π, com altíssima precisão, entregando um grande número de casas decimais limitadas apenas pela capacidade do sistema. Neste caso, diversas estratégias podem ser seguidas, como escolher uma constante e forçar o sistema a calcular um número suficientemente grande de casas decimais registrando o tempo decorrido. Isto fornece uma excelente medida para classificar e comparar o desempenho de diferentes configurações isoladas.
Além disso, se houver capacidade instalada suficiente, uma configuração do sistema pode ser executada para quebrar o número conhecido de casas decimais de uma determinada constante, um desafio assumido no StorageReview com grande sucesso. Conforme relatado em o dezembro Nota de 2023, trabalhei com a equipe StorageReview para melhorar o número conhecido de casas decimais para várias constantes matemáticas. Não só conseguimos bater estes recordes, como o fizemos no menor tempo possível. Tem sido historicamente normal levar semanas ou meses para fazer isso. Trabalhando com o StorageReview, conseguimos isso para todas as constantes em apenas algumas horas e, em alguns casos, dobrando o número de decimais conhecidos. A tecnologia disponível no StorageReview permitiu reduções de tempo em ordens de grandeza. Um resumo desses resultados e seus detalhes pode ser encontrado aqui.
Registre os resultados definidos pelo y-cruncher. Para obter uma lista completa dos recordes estabelecidos pelo y-cruncher, visite mundo numérico.
Esta nota refere-se precisamente a estes resultados. Para conseguir um registro de casas decimais, é necessário atuar em três camadas.
Começando de baixo, a terceira ou última camada é a configuração do hardware; isso significa uma instalação SSD robusta, capacidade de RAM de alto desempenho e CPU multicore de última geração. Muitos desses detalhes e a configuração aplicada podem ser vistos online aqui.
A segunda camada, ou intermediária, compreende o software, ou seja, y-cruncher, constituindo o elo entre as camadas inicial e final. Para aumentar seu desempenho, o y-cruncher mantém diferentes executáveis atom dependendo do tipo de CPU multicore no sistema. O átomo de execução correto é escolhido automaticamente no momento da execução. O testador de bancada permite ao usuário selecionar uma constante e aplicar o algoritmo correspondente. Este algoritmo pode ser integrado diretamente no sistema ou, caso contrário, utiliza arquivos de configuração personalizados para implementação. Detalhes da implementação e uso do y-cruncher podem ser visualizados em mundo numérico. O software y-cruncher está em constante desenvolvimento, navegando na onda de 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.
Usamos um AMD Theadripper PRO 64WX de 5995 núcleos e preparamos scripts de código no PARI-GP, uma plataforma da Universidade de Bordeaux (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 determinada série hipergeométrica com estrutura fixa conhecida, produzam a constante que buscamos. Para fazer isso, é usado o algoritmo LLL - uma parte interna do PARI GP - que procura 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
Envolva-se com a StorageReview
Newsletter | YouTube | Podcast iTunes/Spotify | Instagram | Twitter | TikTok | RSS feed