GPU는 적어도 가속을 완전히 지원하도록 코드가 조정된 사람들에게는 고성능 컴퓨팅 작업 부하를 가속화하기 위한 표준 플랫폼이 되었습니다. 그러나 최근까지 대부분의 가속은 Intel Xeon 또는 IBM Power 프로세서를 사용하는 호스트 시스템에서 발생했습니다. 그러나 Nvidia가 X86 및 Power의 동료로서 Arm을 지원하겠다는 약속을 이행하면서 Arm-GPU 조합으로 구동되는 HPC에 대한 전망이 크게 커졌습니다.
Nvidia의 관점에서 Arm이 특히 EU와 영국에서 향후 HPC 배포에서 X86을 대체할 것이라는 점을 고려하면 이는 확실히 의미가 있습니다. 미국과 기타 지역에서는 Arm이 고성능 컴퓨팅 생태계에 더 많은 다양성과 경쟁을 주입하는 방법으로 간주됩니다. 또한 Arm은 하이퍼스케일, 클라우드 및 엔터프라이즈 환경에서 더 넓은 지리적 가능성을 갖고 있습니다.
잘 알려진 슈퍼컴퓨팅 센터 세 곳(일본의 RIKEN, 영국의 브리스톨 대학교, 미국의 Oak Ridge 국립 연구소)이 Nvidia가 이 Arm-GPU 컴퓨팅 모델을 HPC에 구현하도록 돕고 있습니다.
Oak Ridge의 경우, 연구소에서는 ThunderX2 기반 Wombat 테스트베드 클러스터에 Nvidia V100 GPU를 장착하고 해당 설정을 사용하여 다양한 가속 HPC 코드를 포팅하고 벤치마킹함으로써 이러한 노력을 시작했습니다. Wombat은 사전 구축된 HPE Apollo70 노드 16개로 구성되며, 각 노드에는 28코어 ThunderX2 CPU 한 쌍, 256GB RAM 및 100Gb/초 EDRInfiniBand 네트워크 인터페이스가 장착되어 있습니다. 노드 중 4개에는 노드당 2개씩 Nvidia V100 GPU가 장착되어 있으며 각 GPU는 32GB의 HBM2 메모리에 연결되어 있습니다. Oak Ridge의 "Summit" 슈퍼컴퓨터에 설치된 V100 GPU와 비교할 때 Wombat은 메모리가 두 배이지만 해당 GPU가 Nvidia의 특수 목적 NVLink2 상호 연결 대신 PCI-Express 3.0 링크를 사용하기 때문에 인터페이스가 훨씬 느립니다.
소프트웨어 측면에서 Wombat 사용자에게는 Arm이 강화된 CUDA 10.1(시험판 버전)과 HPC용 gcc v8.2, gcc v9.2를 포함한 일련의 Arm 지원 컴파일러가 제공됩니다. v19 Arm 컴파일러. 3 및 CUDA Fortran을 지원하는 PGI 개발자 버전입니다. 지원 라이브러리는 OpenMPIv3.1 및 v4.0은 물론 UCX 1.7.0, 최적화된 BLAS, LAPACK, FFT 및 ArmPerformance 라이브러리에서 제공하는 기타 수학적 루틴으로 구성됩니다.
테스트된 애플리케이션 중에는 비교 유전체학을 위한 CoMet(Combinatorial Metrics) 코드, 분자 역학 시뮬레이션을 위한 GROMACS(Groningen Chemistry Simulator), 양자 다체 시스템(DCA)의 동적 클러스터 근사가 있었습니다. 코드, LAMMPS(Large-Scale Atomic/Molecular Massively Parallel Simulator) 코드, 재료과학을 위한 LSMS(Local Self-Condependent Multiple Scattering) 코드 등이 있습니다.
Oak Ridge Scientific Computing Group의 계산 과학자인 Wayne Joubert는 이 포트가 매우 간단했으며 주로 애플리케이션 빌드 스크립트를 변경해야 한다고 말했습니다. 예를 들어, CoMet의 주요 방법은 이틀 이내에 포팅, 테스트 및 벤치마킹되었습니다. 다른 코드는 단 몇 시간 안에 이식될 수 있습니다.
Joubert는 다음과 같이 말했습니다. "이 경험은 코드를 X86에서 Power 아키텍처로 이동하는 것과 매우 유사합니다. 실제로 마이그레이션 프로세스 중 가장 큰 과제는 필요한 모든 시스템 소프트웨어가 시스템에 설치되어 있는지 확인하는 것입니다.
ORNL 기술 통합 그룹의 HPC 시스템 프로그래머인 로스 밀러(Ross Miller)는 코드를 포팅하는 여러 팀이 SC19 이전에 불과 몇 주 밖에 안 남았기 때문에 대부분의 경우 애플리케이션을 시작하고 실행할 시간밖에 없었다고 말했습니다. 예를 들어, Summit에서는 GPU의 용량이 GPU의 두 배이지만 개발자는 추가 메모리에 대한 문제 크기를 조정할 기회가 없습니다.
Miller는 "적어도 하나의 경우(VMD)에서 X86 코드에 대해 수동으로 조정된 SSE, AVX 및 AVX-512 루틴을 작성했습니다."라고 Miller는 말했습니다. "Arm 포트는 전적으로 컴파일러에 의존해야 합니다. 생성된 코드는 그렇지 않습니다. 그 효율적. 개발자가 시간을 들여 NEON 명령어 세트에 대해 유사한 최적화 루틴을 작성했다면 성능은 훨씬 더 가까워졌을 것입니다. "
일반적으로 GPU 성능은 Summit 성능의 거의 20%이며, 그 차이는 덜 강력한 호스트 프로세서(ThunderX2 대 Power9)와 최적화 부족으로 인한 것입니다. 일부 애플리케이션은 낮은 PCIe 대역폭으로 인해 어려움을 겪는 반면 For는 이러한 모든 요소와 더불어 Wombat이 사전 구축된 하드웨어와 경우에 따라 사전 구축된 소프트웨어를 사용한다는 점을 고려하면 이제 이 Arm-GPU 제품의 상대적인 성능을 비교해 볼 차례입니다.
마찬가지로 이 특정 시스템의 에너지 효율성을 평가하기에는 너무 이르습니다.
Arm, Nvidia 및 HPC 사용자 커뮤니티는 모두 오랫동안 노력하고 있습니다. 1990년대 초 X86이 HPC를 인수해 향후 30년 동안 지배적인 아키텍처가 된 것처럼 Arm이 HPC 시장을 장악할 것이라고 예상하는 사람은 아무도 없습니다. 그러나 Arm은 조금씩 HPC 시장을 장악할 수 있습니다. EETOP(nextplatform 번역)
광고: 창신강당이 설 기간 동안 혜택을 드려요!
전 사이트 30% 할인(마지막 날), 모두들 즐거운 쇼핑 되세요! .