홈페이지 Enterprise 105조 Pi 자릿수: 새로운 Pi 계산 기록을 향한 여정

105조 Pi 자릿수: 새로운 Pi 계산 기록을 향한 여정

by 조던 라누스

StorageReview와 우리 파트너는 Pi를 105조 자리까지 풀었습니다. 이는 이전 기록을 XNUMX% 앞선 새로운 세계 기록입니다.

우리는 계산의 경계를 넓히는 데 익숙하지 않지만 이것은 Pi(e)를 사용합니다. 작년에 이어 핫한 100 105조 자릿수 벤치마크를 위해 우리는 이를 확대하여 알려진 Pi의 자릿수를 105,000,000,000,000조 자릿수로 늘리기로 결정했습니다. 3 이후의 숫자는 105입니다. 우리는 작년 실행에서 플랫폼을 몇 가지 업데이트했고, 라이딩 중에 몇 가지 놀라운 사실을 발견했으며, 그 과정에서 Pi;6의 XNUMX조 번째 자리를 포함하여 몇 가지 사실을 배웠습니다!

105조 파이 - 서버 및 JBOF

StorageReview 연구소는 Pi를 105조 자릿수까지 계산하여 세계 기록을 깨는 최신 하드웨어의 놀라운 기능을 강조했습니다. 2TB의 DRAM과 거의 128페타바이트에 달하는 Solidigm QLC SSD를 탑재한 최첨단 1.5P XNUMX코어 AMD EPYC Bergamo 시스템을 기반으로 한 이러한 노력은 컴퓨팅 및 스토리지 기술 분야에서 획기적인 성과를 나타냅니다.

도전

100조 디지털 런에서 우리는 몇 가지 기술적 한계에 부딪혔습니다. 예를 들어 서버 플랫폼은 전면 슬롯에서 16개의 NVMe SSD만 지원했습니다. CPU 성능은 충분했지만 이 계산에는 프로세스 도중과 최종 TXT 파일이 출력될 때 백엔드에 막대한 저장 공간이 필요했습니다.

지난번 스토리지 문제를 해결하기 위해 우리는 PCIe NVME 어댑터 슬레드를 사용하여 SSD 0개를 더 집어넣었습니다. 그런 다음 출력을 위해 RAIDXNUMX에 HDD 스토리지 서버가 있었고 iSCSI 공유가 계산 상자에 다시 포함되었습니다. 이번에 우리는 이 서버를 좀 더 "기업"적으로 만들고 싶었기 때문에 도움을 줄 친구 몇 명을 데려왔습니다. 흥미롭게도 서버에 여러 개의 NVMe SSD를 추가하는 것이 보이는 것처럼 쉽지 않습니다.

하드웨어

이 기념비적인 작업의 핵심은 각각 9754개의 코어를 제공하는 듀얼 프로세서 AMD EPYC 128 Bergamo 시스템이었습니다. 매우 복잡한 컴퓨팅 작업에서 탁월한 성능을 발휘하는 것으로 알려진 AMD 프로세서 (AI, HPC, 빅데이터 분석), 필요한 마력을 제공했습니다. 이를 보완한 1.5TB DRAM은 신속한 데이터 처리 및 전송 속도를 보장합니다. 동시에 거의 페타바이트에 달하는 솔리드다임 QLC 스토리지 전례 없는 용량과 안정성을 제공했습니다.

105조 파이 스토리지 드라이브

기본 섀시 플랫폼은 작년(QCT 박스)과 동일하게 유지되었지만 CPU를 AMD EPYC 9754 Bergamo 칩으로 업그레이드했습니다. 우리는 계산을 위한 스토리지 사용을 피하면서 속도와 소수점 개선을 추구하고 싶었습니다. 이는 JBOF를 제공하기 위해 SerialCables를 호출해야 함을 의미합니다. 이는 그 자체로 몇 가지 과제를 제시했으며 이에 대해서는 아래에서 자세히 설명하겠습니다.

매개 변수 가치관
시작 날짜 19년 14월 10일 (화) 48:2023:XNUMX
종료 날짜 27년 09월 53일 (화) 16:2024:XNUMX
총 계산 시간 5,363,970.541초 / 62.08일
시작부터 끝까지 벽 시간 6,032,547.913초 / 69.82일

계산 기간: 14년 2023월 27일 ~ 2024년 75월 XNUMX일, XNUMX일간.

  • CPU : 듀얼 AMD Epyc 9754 Bergamo 프로세서, BIOS에서 동시 멀티스레딩(SMT)이 비활성화된 256개 코어.
  • 메모리 : 1.5TB의 DDR5 RAM.
  • 스토리지 : 36x 30.72TB Solidigm D5-P5316 SSD.
    • SerialCables JBOF에 24x 30.72TB Solidigm D5-P5316 SSD
    • 서버 직접 연결형 12x 30.72TB Solidigm D5-P5316 SSD.
  • 운영 체제 : 윈도우 서버 2022(21H2).

105조를 향한 길

매개 변수 가치관
상수 Pi
암호알고리즘 추드노프스키 (1988)
십진수 105,000,000,000,000
16진수 87,200,612,490,794
스레딩 모드 Cilk Plus 작업훔치기 -> 256 / 256
메모리 작동 1,492,670,259,968(1.36TiB)
총 메모리 1,492,984,298,368(1.36TiB)
논리적으로 가장 큰 체크포인트 157,783,654,587,576(144TiB)
논리적 최대 디스크 사용량 534,615,969,510,896(486TiB)
논리 디스크 읽은 바이트 수 44,823,456,487,834,568(39.8PiB)
쓴 논리 디스크 바이트 수 38,717,269,572,788,080(34.4PiB)

직면한 도전

사용 가능한 스토리지를 프로세서로 확장하는 데 필요한 이 실행의 새로운 구성 요소는 NVMe JBOF를 추가하는 것이었습니다. 우리의 테스트 플랫폼은 16개의 NVMe 베이를 제공했으며 나머지 100개는 SATA용으로만 연결되었습니다. 우리의 2조 실행은 19개의 내부 PCIe U.XNUMX 어댑터를 활용하여 NVMe 드라이브 수를 XNUMX개로 확장했지만 최적은 아니었습니다. 이번 재실행을 위해 우리는 직렬 케이블 24-bay U.2 JBOF이는 더 많은 컴퓨팅 스왑 스토리지와 내부 출력 파일 스토리지라는 두 가지 측면에서 큰 도움이 되었습니다. 더 이상 미친 RAID0 HDD 스토리지 서버는 없습니다!

직렬 케이블 24베이 JBOF를 사용하면 원래 실행보다 드라이브 수를 거의 두 배로 늘릴 수 있었습니다. y-cruncher 스왑 공간에 30개의 드라이브를 할당하고 스토리지 공간 RAID6 출력 볼륨에 5개의 SSD를 남겨 두었습니다. 이러한 접근 방식의 큰 장점은 출력 단계에서 나타났습니다. 출력 단계에서는 첫 번째 10T Pi 반복과 같이 단일 100Gb 연결 속도에 제약을 받지 않았습니다. JBOF는 총 드라이브 수 문제를 해결했지만 개별 드라이브 성능이라는 한 가지 제한 사항을 도입했습니다.

직접 연결된 U.2 SSD가 있는 서버에는 드라이브당 96개의 PCIe 레인이 있습니다. 각 드라이브가 마더보드에 직접 연결되면 SSD 24개에 대해 XNUMX개의 PCIe 레인이 작동됩니다. JBOF의 총 대역폭은 호스트에 다시 연결할 수 있는 PCIe 레인 수에 따라 제한됩니다.

이 경우에는 12개의 PCIe 스위치 호스트 카드를 사용하여 JBOF를 12개의 SSD로 구성된 두 그룹으로 분할했습니다. SSD 16개로 구성된 각 그룹은 XNUMX개의 PCIe 레인을 공유했습니다. SSD를 호스트에 연결하는 데 여전히 상당한 이점을 제공하지만 JBOF를 통해 실행되는 스왑 드라이브가 서버에 직접 연결된 드라이브보다 뒤처지는 시나리오도 있었습니다. 이것은 JBOF의 잘못이 아닙니다. 이는 단지 기술적인 제한이거나 서버가 작동할 수 있는 PCIe 레인 수에 대한 제한일 뿐입니다.

기민한 독자라면 이번 실행에서 왜 SSD를 36개로 늘리지 않고 40개로 멈췄는지 궁금해할 것입니다. 재미있는 이야기입니다. 주소 지정이 가능한 PCIe 공간은 많은 서버에서 제한이 있습니다. 우리의 경우 드라이브 수가 38개일 때 마지막 SSD가 USB 칩셋의 PCIe 주소를 가져갔고 서버 제어권을 잃었습니다. 안전하게 플레이하기 위해 우리는 BIOS로 들어가거나 서버에 로그인할 수 있도록 SSD를 36개로 백업했습니다. 경계를 넓히면 몇 가지 놀라운 발견이 가능해집니다.

진단 통찰력 및 해결 방법

우리가 직면한 두 가지 주요 과제 중 첫 번째는 성능과 관련된 문제였습니다. 우리가 발견한 것은 암달의 법칙 행동 중. 대규모 스왑 모드 작업 중에 y-cruncher가 256코어 AMD Bergamo 시스템에 "멈춘" 것처럼 보일 때 독특한 문제가 나타났습니다. CPU 및 디스크 I/O 활동 부족을 특징으로 하는 이러한 중단은 소프트웨어 동작에 대한 기존 기대에 도전했습니다. 이를 통해 병렬 컴퓨팅과 하드웨어 상호 작용의 복잡성에 대해 자세히 알아볼 수 있었습니다.

검색 프로세스에 따르면 해당 프로그램은 실제로 정지된 것이 아니라 광범위한 256코어 설정에서 단일 스레드로 실행되면서 심각하게 제한된 용량으로 작동하고 있는 것으로 나타났습니다. 이러한 비정상적인 동작은 암달의 법칙의 잠재적 영향에 대한 의문을 불러일으켰습니다. 특히 관련된 작업은 컴퓨팅 집약적이지 않았고 1.5TB RAM이 장착된 시스템에서 심각한 지연을 초래해서는 안 되었기 때문입니다.

수사 이 문제가 소비자 데스크탑에 재현되었을 때 예상치 못한 방향으로 전환되어 덜 광범위한 시스템에서도 Amdahl의 법칙의 심각한 영향을 강조했습니다. 이로 인해 근본 원인에 대한 심층 조사가 이루어졌고, 슈퍼 정렬과 메모리 액세스 패턴에 미치는 영향과 관련된 Zen4 아키텍처와 관련된 CPU 위험을 발견했습니다.

105조 파이 - 서버 및 JBOF 후면

이 문제는 단순한 특성으로 인해 관찰된 것보다 훨씬 빠르게 실행되어야 하는 코드의 루프로 인해 AMD 프로세서에서 더욱 악화되었습니다. 근본 원인은 AMD의 로드 저장 장치에 의한 메모리 앨리어싱을 비효율적으로 처리하는 것으로 나타났습니다. 이 복잡한 문제를 해결하려면 AVX512를 사용하여 루프의 벡터화를 통해 초정렬 위험을 완화하고 향상된 병렬성을 통해 암달의 법칙으로 인한 속도 저하를 해결해야 했습니다. 이러한 포괄적인 접근 방식은 즉각적인 문제를 해결했을 뿐만 아니라 y-cruncher의 계산 프로세스를 크게 최적화하여 고성능 컴퓨팅 환경에서 유사한 문제를 해결하는 선례를 세웠습니다.

다음 문제는 계산의 마지막 단계에서 발생했는데, 이는 예기치 않게 중단되고 충돌 원인에 대한 정보를 제공하지 않습니다. Alexander Yee에게 원격 액세스 권한이 부여되었으며, 10년 만에 처음으로 Pi 기록을 완성하려면 개발자의 직접적인 개입이 필요했습니다.

우리는 이 진단 프로세스에 참여하지 않았지만 N512 곱셈 알고리즘의 AVX63 코드 경로 내에 심각한 부동 소수점 산술 오류가 있었습니다. Alexander는 원격으로 진단할 수 있었습니다., 고정 바이너리를 제공하고 체크포인트에서 재개하여 중요한 소프트웨어 수정을 구현한 후 성공적인 계산으로 마무리됩니다.

성찰과 전진

이러한 노력은 고성능 컴퓨팅의 복잡성과 예측 불가능성을 보여줍니다. 이러한 과제를 해결함으로써 새로운 Pi 계산 기록을 세우고 소프트웨어 개발 및 테스트 방법론에 대한 귀중한 통찰력을 제공했습니다. 최신 y-cruncher 릴리스인 v0.8.4에는 확인된 문제에 대한 수정 사항이 포함되어 있어 향후 계산의 안정성이 향상될 것을 약속합니다.

Pi를 105조 자릿수까지 계산하는 것은 결코 쉬운 일이 아니었습니다. 여기에는 세심한 계획, 최적화 및 실행이 포함되었습니다. StorageReview 팀은 오픈 소스와 독점 소프트웨어의 조합을 활용하여 알고리즘 프로세스를 최적화하여 하드웨어 기능을 최대한 활용하고 계산 시간을 줄이고 효율성을 높였습니다.

PCIe Gen4 포화 읽기 성능과 최대 61.44TB의 업계 최고 용량을 갖춘 Solidigm QLC SSD는 믿을 수 없는 결과를 제공합니다. Solidigm의 ​​전략 계획 및 마케팅 부사장인 Greg Matson은 "이러한 드라이브가 고성능 컴퓨팅 또는 AI 집약적 애플리케이션에서 무엇을 가능하게 할 수 있는지 상상해 보십시오."라고 말했습니다. Solidigm의 ​​SSD가 Storagereview의 두 번째 기록 경신 파이 계산 시도에 힘을 실어줄 수 있다는 사실에 매우 기쁩니다. 그들의 노력은 Solidigm 스토리지 드라이브의 진정한 기능을 입증하여 데이터 집약적인 AI 애플리케이션에 대한 가능성의 세계를 열어줍니다.”

결론

105조 자릿수 Pi를 실행하는 작업은 우리가 예상했던 것보다 훨씬 더 복잡했습니다. 곰곰히 생각해보면 우리는 새로운 문제에 직면할 것을 예상했어야 했습니다. 결국 우리는 이전에 한 번도 수행된 적이 없는 계산을 완료하고 있습니다. 그러나 훨씬 더 많은 "덕트 테이프와 치킨 와이어" 구성으로 100조 계산이 완료되면서 우리는 해냈다고 생각했습니다. 궁극적으로 이 장비를 결승선에 통과시키기 위해서는 공동의 노력이 필요했습니다.

우리는 파트너들과 함께 이 기록적인 기록을 기뻐하면서 "이것이 무엇을 의미하는가?"라고 질문해야 합니다. 5조 자리의 파이가 더 많다고 해서 수학에 큰 변화는 없을 것입니다. 그럼에도 불구하고 우리는 계산 작업 부하와 이를 지원하기 위한 최신 기본 하드웨어의 필요성 사이에 몇 가지 선을 그을 수 있습니다. 기본적으로 이 연습은 엔터프라이즈 데이터 센터 클러스터이든 대규모 HPC 설치든 적절한 하드웨어가 모든 차이를 만든다는 점을 반영합니다.

Pi 계산의 경우 저장소로 인해 완전히 제한되었습니다. 더 빠른 CPU는 계산을 가속화하는 데 도움이 되지만, 많은 새로운 세계 기록을 제한하는 요소는 상자에 들어 있는 로컬 저장 용량입니다. 이번 실행을 위해 우리는 다시 Solidigm D5-P5316 30.72TB SSD 시스템에 1.1PB가 조금 넘는 원시 플래시를 확보하는 데 도움이 되었습니다. 이 SSD가 우리가 이전 기록을 깨고 105조 파이 자릿수를 달성할 수 있었던 유일한 이유입니다.

하지만 이것은 흥미로운 질문을 제기합니다. 많은 추종자들은 Solidigm이 D61.44-P5의 5336TB SSD 최대 30.72TB D5-P5430 다양한 폼 팩터와 용량으로 제공되는 SSD. 우리는 드라이브를 검토했으며 놀라울 정도로 밀도가 높은 드라이브를 보여주는 많은 소셜 미디어 게시물을 보유하고 있습니다. 이러한 SSD 중 32개가 2PB의 스토리지에 접근하는 상황에서 Pi의 105조 자릿수가 얼마나 오랫동안 세계 최대 규모로 유지될지 궁금할 것입니다. 우리는 그리 오래 생각하고 싶지 않습니다.

Pi의 가장 큰 알려진 십진수

1432360875 9463978314 2999186657 8364664840 8558373926: 자릿수를 105,000,000,000,000까지

StorageReview에 참여

뉴스레터 | 유튜브 | 팟캐스트 iTunes/스포티 파이 | 인스타그램 | 트위터 | 틱톡 서비스 | RSS 피드