Home Empreendimento StorageReview calculou 100 trilhões de dígitos de Pi em 54 dias, superando o Google Cloud

StorageReview calculou 100 trilhões de dígitos de Pi em 54 dias, superando o Google Cloud

by Jordan Ranous
amd genoa CPU nua

Pi representa a razão entre a circunferência de um círculo e seu diâmetro e possui um número infinito de dígitos decimais que nunca se repetem ou terminam. Calcular Pi infinito não é apenas uma busca emocionante para matemáticos; é também uma maneira de colocar o poder de computação e a capacidade de armazenamento no teste de resistência final. Até agora, a nuvem do Google detinha o recorde mundial para a maior solução de Pi com 100 trilhões de dígitos. A partir de hoje, o StorageReview correspondeu ao número deles e o fez em uma fração do tempo.

Pi representa a razão entre a circunferência de um círculo e seu diâmetro e possui um número infinito de dígitos decimais que nunca se repetem ou terminam. Calcular Pi infinito não é apenas uma busca emocionante para matemáticos; é também uma maneira de colocar o poder de computação e a capacidade de armazenamento no teste de resistência final. Até agora, a nuvem do Google detinha o recorde mundial para a maior solução de Pi com 100 trilhões de dígitos. A partir de hoje, o StorageReview correspondeu ao número deles e o fez em uma fração do tempo.

100 trilhões de dígitos de Pi

Pi no céu, acima da(s) nuvem(s)

No ano passado, Emma Haruka Iwao, advogada do desenvolvedor do Google Cloud, anunciou que ela e sua equipe calcularam Pi com 100 trilhões de dígitos, quebrando seu recorde anterior de 31.4 trilhões de dígitos de 2019. Eles usaram um programa chamado y-cruncher em execução no Compute Engine do Google Cloud, que levou cerca de 158 dias para ser concluído e processou cerca de 82 petabytes de dados. No final, essa execução também teria uma enorme fatura de computação e armazenamento em nuvem, combinada com o impulso crescente para as organizações trazerem cargas de trabalho específicas de volta ao local, o que nos deu uma ideia interessante…

Ficamos impressionados com a conquista de Emma e do Google Cloud, mas também nos perguntamos se poderíamos fazer isso mais rápido, com um custo total menor. Em StorageReview.com, temos acesso a alguns dos melhores e mais recentes hardwares do setor, incluindo Processadores AMD EPYC 4ª geração, Solidigm SSD P5316 e quantidades obscenas de baterias de lítio. Como uma combinação perfeita, construímos um servidor de alto desempenho com pouco menos de 600 TB de flash QLC e uma solução de energia de alta disponibilidade exclusiva.

Aqui estão as especificações do nosso sistema de computação:

Embora o hardware total possa parecer extremo, o custo para comprar nosso hardware ainda é uma fração da execução da mesma carga de trabalho na nuvem por seis meses.

Data Center: Projetado por Madmen

Uma das primeiras perguntas que surgiram quando estávamos projetando nosso equipamento para este teste foi: "Como vamos apresentar um volume contíguo grande o suficiente para armazenar um arquivo de texto com 100 trilhões de dígitos de Pi?" citação que dissemos totalmente). A matemática é bastante simples, 1 dígito Pi = 1 byte, e ter 100 trilhões de dígitos decimais significava que precisávamos de 100 TB para isso e 83 TB adicionais para os 83 trilhões de hexadecimais que também seriam calculados. Felizmente, este é o StorageReview e, se há uma coisa que sabemos fazer, é armazenar muitos dados com uma quantidade excessiva de estresse.

Infelizmente, mesmo Kevin não tem uma unidade flash de 183 TB em seu chaveiro de unidades flash do tamanho de um zelador (ainda). Então, depois de examinar e testar vários métodos no laboratório e explorar várias maneiras de mapear um NAS ou um compartilhamento de arquivo, percebemos por meio de testes que o y-cruncher gosta de ter o controle Direct IO dos discos com os quais está trabalhando; não apenas os discos de troca, mas também o diretório de saída do arquivo. Dar ao y-cruncher um volume para o qual ele pode enviar comandos SCSI era nossa única opção, pois produz desempenho ideal.

Portanto, a única coisa lógica a fazer a seguir era usar um destino iSCSI para um servidor de armazenamento Supermicro para armazenar os arquivos de saída, que eram muito grandes para caber em qualquer volume único no host de computação local. Essa plataforma era mais tradicional no sentido de armazenamento de alta capacidade, hospedando “apenas” 200 TB em quatro LUNs de 50 TB que separamos em nossa plataforma de computação.

Embora o RAID 0 possa surpreender, em nossa defesa, o armazenamento do servidor de arquivos foi criado a partir de um pool espelhado de Espaços de Armazenamento do Windows, portanto, a redundância estava disponível no host remoto. Em seguida, ele foi encaminhado por uma interface 10G de porta dupla, diretamente conectado e conectado entre os dois servidores. A remoção de uma chave dessa equação foi proposital, pois essa plataforma Pi foi projetada para operar totalmente separada, caso o laboratório principal ficasse offline.

Embora a proteção de energia nem sempre seja uma grande preocupação no laboratório StorageReview, um projeto dessa magnitude (que durou meses) exigiu medidas extremas para garantir o tempo de atividade. Nós alavancamos três Estações elétricas portáteis EcoFlow Delta Pro, cada um com capacidade de saída de 3600 W e bateria de 3600 Wh.

O servidor AMD Genoa aproveitou dois, com um Eaton 5PX fonte de alimentação ininterrupta em linha entre um Delta Pro, para aliviar o atraso de comutação do EcoFlow durante uma interrupção. O servidor de arquivos tinha um Delta Pro dedicado a ele, com um Eaton 5PX G2 para atrasos na transferência.

Resumindo, criamos um no-break com esteróides, combinando os benefícios das estações de energia portáteis de alta capacidade com a confiabilidade dos modernos equipamentos de backup de bateria de data center. No pico de carga de computação, tivemos um tempo de execução de 4 a 8 horas com a bateria. Tivemos inúmeras tempestades ao longo da corrida 100T Pi, mas pudemos dormir facilmente, sabendo que a corrida Pi permaneceria operacional.

Carne, Batatas e Pi. Muitos e muitos Pi…

Iniciamos o cálculo em quinta-feira, 9 de fevereiro 17:40:47 2023 EST, e terminamos em segunda-feira, 10 de abril 05:27:37 2023 EST. O tempo de cálculo do Pi decorrido foi de 54 dias, 17 horas, 35 minutos e 48.96 segundos, com o tempo total de parede a parede, incluindo escrita e validação, sendo 59 dias, 10 horas, 46 minutos e 49.55 segundos.

O tamanho total de armazenamento disponível era de 530.1 TB, sem incluir o destino iSCSI de 200 TB para gravação. Aqui estão alguns destaques dos contadores do arquivo de validação do y-cruncher, disponível para download e verificação.

Os Números

Data de início: quinta-feira, 9 de fevereiro 17:40:47 2023

Modelo de trabalho:

  • Constante: Pi
  • Algoritmo: Chudnovsky (1988)
  • Dígitos decimais: 100,000,000,000,000
  • Dígitos hexadecimais: 83,048,202,372,185
  • Memória de trabalho: 1,512,978,804,672 (1.38 TiB)
  • Memória total: 1,514,478,305,280 (1.38 TiB)

Contadores de disco lógico:

  • Maior ponto de verificação lógico: 150,215,548,774,568 (137 TiB)
  • Uso de disco de pico lógico: 514,540,112,731,728 (468 TiB)
  • Total de bytes do disco lógico lido: 40,187,439,132,182,512 (35.7 PiB)
  • Total de bytes gravados do disco lógico: 35,439,733,386,707,040 (31.5 PiB)

Números não mentem:

  • Tempo total de computação: 4728948.966 segundos
  • Tempo de parede do início ao fim: 5136409.559 segundos
  • Últimos dígitos decimais:
    • 4658718895 1242883556 4671544483 9873493812 1206904813: 99,999,999,999,950
    • 2656719174 5255431487 2142102057 7077336434 3095295560: 100,000,000,000,000

Data final: segunda-feira, 10 de abril 05:27:37 2023

Os dez dígitos de Pi que levam a 100 trilhões são 3095295560.

Calculamos o Pi com 100 trilhões de dígitos em cerca de um terço do tempo, em parte graças a todo o espaço de armazenamento de troca local em comparação com o método do Google. Isso mostra o incrível desempenho, densidade e eficiência dos SSDs Solidigm P5316 QLC conectados localmente e, é claro, dos processadores AMD EPYC de 4ª geração.

O armazenamento local foi parte integrante dessa corrida de velocidade. Embora a execução do Google pudesse explorar quantidades quase ilimitadas de armazenamento, ela era limitada a uma interface de rede de 100 Gb. É estranho dizer que 100 Gb é lento, mas na escala do nosso teste, torna-se um grande gargalo. Durante nossas rajadas de gravação de troca, medimos velocidades de transferência acumulativas para os SSDs Solidigm P5316 QLC acima de 38 GB/s.

As velocidades de leitura foram ainda maiores. Em termos de rede, você precisaria de vários links de 400 Gb (redundância) para fluir essa quantidade de dados. Embora não seja impossível, muitos ambientes de nuvem simplesmente não são criados para esse nível de largura de banda. As instâncias de E/S densas bare metal da Oracle provavelmente são as que mais se aproximam dessa escala de velocidade bruta, mas são limitadas a oito SSDs NVMe e 54.4 TB de capacidade combinada.

Solidigm QLC Flash para desempenho, resistência e densidade

Para facilitar um cálculo tão significativo, precisávamos de espaço, e muito, o mais rápido que conseguíssemos encontrá-lo. O modo de troca é um recurso do y-cruncher que permite que cálculos sejam executados usando o disco, o que é necessário para executar grandes cálculos que não cabem na memória principal. O uso de várias unidades em paralelo é necessário para um melhor desempenho e, para melhorar ainda mais o desempenho, podem ser usadas unidades de estado sólido (SSDs). No entanto, não foi recomendado no passado porque a análise teórica de seu desgaste de escrita não é encorajadora.

O uso do modo de troca do y-cruncher, em vez de depender do arquivo de paginação do sistema operacional, é essencial porque os padrões de acesso à memória no y-cruncher não são diretamente compatíveis com o disco. Felizmente, o modo swap do y-cruncher foi projetado para superar essa limitação, minimizando as buscas de disco e usando acessos sequenciais ao disco. O modo Swap do y-crunchers foi usado em uma configuração RAID 0 com 19 unidades, o que deu ao aplicativo acesso IO direto aos discos NVMe para desempenho ideal.

Os SSDs Solidigm P5316 que usamos em nosso teste utilizam uma interface PCIe Gen4 e são equipados com memória flash QLC NAND de 144 camadas. Eles oferecem desempenho excepcional, com até 7 GB/s de velocidade de leitura sequencial e até 3.6 GB/s de velocidade de gravação sequencial.

As unidades de estado sólido QLC são reconhecidas por sua capacidade de reduzir despesas sem comprometer a capacidade de armazenamento e o desempenho eficiente. Isso torna a tecnologia QLC SSD benéfica para muitas situações de negócios. Por exemplo, VAST Data incorpora essas unidades em seus produtos para eliminar a necessidade de unidades de disco rígido. Ao mesmo tempo, a Pliops emprega uma placa aceleradora com unidades QLC para uma resolução rápida e econômica.

Temos essas unidades em nosso laboratório desde o final de 2021 e as submetemos a muitos testes, mas este foi um dos testes mais intensivos e extensos até o momento. Das 19 unidades que usamos, todas estavam com 99-100% de integridade no início do cálculo.

Nos 54.5 dias em que esse cálculo foi executado, tivemos um total de 33,127,095 GB de gravação nas unidades, ou cerca de 1,742,500 GB por unidade. Convertendo isso em um excedente diário em nossa execução, isso é um pouco mais de 29 TB por unidade por dia.

A extrapolação para uma carga de trabalho simulada de longo prazo é de cerca de 10.69 PB por ano de gravações de dados por unidade. A Solidigm lista a resistência do P5316 em 22.9 PBW para cargas de trabalho aleatórias e 104.6 PBW para cargas de trabalho sequenciais. Com a carga de trabalho Pi permanecendo em rajada durante sua duração sem estressar fortemente o flash, ela agiu de forma muito sequencial, colocando a carga de trabalho na extremidade superior do espectro de resistência da Solidigm.

Isso significa que você pode sujeitá-los a uma carga de trabalho semelhante por quase uma década antes de ficar sem vida. Impressionante para dizer o mínimo, considerando que é QLC NAND e a garantia do drive é de cinco anos. Qualquer pessoa preocupada com o desgaste dessas unidades pode usar esse caso de uso como outro ponto de validação de que o QLC está pronto para empresas.

No final da execução de 59.5 dias, o status de integridade foi relatado como 97-98% em todas as unidades do servidor. Mal havíamos feito uma diferença na resistência dessas unidades.

CPUs AMD EPYC épicas

Os processadores AMD EPYC de 4ª geração são baseados na microarquitetura Zen 4 e no processo de 5 nm, tornando-os os primeiros processadores de data center x5 de 86 nm do setor. Eles suportam até 12 canais de memória DDR5, instruções AVX-512 VNNI e BFloat16 para desempenho aprimorado em aplicativos AI e ML. Eles oferecem até 30% mais desempenho por núcleo do que os processadores Ice Lake da Intel e até o dobro do desempenho dos processadores EPYC Milan da geração anterior da AMD.

amd genoa CPU nua

O ajuste foi uma grande parte dessa execução, pois testamos e iteramos extensivamente por meio de registros menores de cálculos de Pi, anteriormente mantidos, como 1 bilhão e 10 bilhões. Por meio de alguns ajustes com o BIOS e usando o tempo de execução de 10 bilhões como métrica, conseguimos obter melhorias significativas de desempenho para essa carga de trabalho. Isso nos deu uma vantagem significativa sobre a utilização de recursos de nuvem, pois tínhamos controle granular sobre a plataforma para otimizá-la para nosso aplicativo, o que não é uma opção com instâncias de nuvem prontas para uso.

Começamos desabilitando o SMT no BIOS e obtivemos algumas melhorias percentuais no tempo de execução dos testes menores. A próxima opção que exploramos foi C-States. Percebemos que, ao executar o y-cruncher, a CPU tendia a entrar e sair dos c-states de menor potência com bastante frequência, pois passava por diferentes processos.

O ajuste das configurações do BIOS, incluindo a desativação do SMT e o controle dos estados C, combinado com alguns ajustes de desempenho no sistema operacional, foi um fator crucial para melhorar o desempenho dessa carga de trabalho. Um grande grito para Alexander Yee do y-Cruncher, e um amigo da cena do overclock, Forks, por ajudar a apontar alguns ajustes e configurações no Windows e no y-Cruncher para ajudar a fazer essa execução funcionar.

Pi; Corrida de velocidade 100T, 100%. O que agora?

Bem, pessoal, enquanto encerramos esta peregrinação, vamos aproveitar a glória de computar incríveis 100 trilhões de dígitos de Pi em apenas 54 dias! Graças ao programa y-cruncher, à força hercúlea dos processadores AMD EPYC de 4ª geração e aos ultrarrápidos SSDs Solidigm P5316 QLC, testemunhamos uma conquista que fará sua calculadora corar.

Ultrapassando os limites do poder bruto do computador e do armazenamento de dados de tamanho oceânico, nossa equipe confiável de unidades de armazenamento flash QLC conectadas localmente realmente teve tempo para brilhar. Os SSDs Solidigm P5316, com sua resistência e desempenho excepcionais, são como os ajudantes de super-heróis do mundo dos negócios. E não vamos esquecer nossas estações de energia portáteis e equipamentos robustos de backup de bateria, garantindo que nossa Pi-rade continue funcionando - mesmo quando a Mãe Natureza tentou chover em nossa celebração perfeitamente assada.

Então, enquanto dizemos adeus a esta extravagância do Pi que quebrou recordes, vamos abrir uma fatia para as infinitas possibilidades nos mundos da matemática e da ciência da computação que estão por vir. Saúde!

Visite Solidigm

Envolva-se com a StorageReview

Newsletter | YouTube | Podcast iTunes/Spotify | Instagram | Twitter | TikTok | RSS feed