그래프코어의 IPU는 워크로드를 가속화하고 미래를 향한 새로운 길을 개척하며 AI 분야에 지대한 영향을 미치고 있습니다.
점점 더 많은 사용자가 그래프코어의 고성능 대규모 병렬 프로세서를 활용해 AI를 넘어 패스(또는 레이) 트레이싱, 분산 데이터 보간은 물론, 심지어 입자물리학의 칼만 필터와 같은 여러 과학 연구 분야에서 새로운 애플리케이션을 구현해 내고 있습니다.
그래프코어는 이러한 노력에 대한 지원을 강화하기 위해 ‘가속 컴퓨팅 아카데미(Accelerated Computing Academy)’를 론칭했습니다. 이 프로그램은 머신 러닝을 뛰어넘은 연산 집약적인 학술 애플리케이션에 대한 하드웨어 액세스와 맞춤형 지원을 제공합니다.
그래프코어의 가속 컴퓨팅 아카데미는 브리스톨 대학, 임페리얼 칼리지 런던, 옥스퍼드 대학, 시뮬라 리서치 연구소(Simula Research Laboratory), 유니버시티 칼리지 런던 등을 포함한 학계 및 HPC 분야 최고 전문가들과 그래프코어가 결성한 새로운 유럽 컴퓨팅 연구회의 지원을 받습니다.
지원 범위에는 연구 보조금 및 펀딩 신청서도 포함되며, 해당 프로그램의 회원은 정기 프로젝트 쇼케이스 및 개발자 스포트라이트 프로모션에도 참가하게 됩니다. 또한 그래프코어 IPU를 활용해 새로운 애플리케이션을 개발한 경험이 있는 선도적인 학술 기관의 지원과 지도를 받게 됩니다.
뿐만 아니라, 그래프코어의 가속 컴퓨팅 아카데미 회원은 관련 분야 인턴십에 지원할 수 있는 자격도 얻을 수 있습니다. (자세한 내용은 추구 공지 예정)
브리스톨 대학의 물리학 교수 Jonas Rademacker는 “가속 컴퓨팅 아카데미는 그래프코어 IPU를 활용해 여러 획기적인 애플리케이션을 만들어낼 수 있는 환상적인 이니셔티브”라며, “여기에는 물질-반물질 비대칭에 대한 가장 정확한 측정을 수행하기 위해 엄청난 속도의 실시간 데이터 처리를 필요로 하는 LHCb(Large Hadron Collider beauty) 실험도 해당된다”고 말했습니다.”
옥스퍼드 대학의 공학 부교수 Natalia Ares 역시 “가속 컴퓨팅 아카데미 참가자들과 그래프코어 IPU 활용에 대한 인사이트와 경험을 주고받으며 여러 가지 흥미로운 애플리케이션을 새롭게 개발하는 데 도움이 되고 싶다”고 설명했습니다.
그래프코어의 가속 컴퓨팅 아카데미는 컴퓨팅 분야 선구자들과 최첨단 하드웨어를 연결하여 오늘날 당면해 있는 주요 과제를 해결함으로써, 전 세계에 긍정적인 영향력을 미칠 수 있을 것으로 기대됩니다.
가속 컴퓨팅 아카데미는 전 세계 모든 지원자들이 등록 가능합니다.
가속 컴퓨팅 아카데미는 누구를 대상으로 하나요?
가속 컴퓨팅 아카데미는 AI 및 머신 러닝 외에도 연산 집약적인 연구를 통해 새로운 문제를 해결하고자 하는 학계 컴퓨터 과학자를 위해 특별 설계되었습니다. 특히 그래프코어의 Poplar API를 활용하는 로우 레벨 프로그래밍에 관한 것으로, IPU의 모든 하드웨어 기능을 직접 사용하게 됩니다.
이 프로그램은 또한 PyTorch 또는 TensorFlow 같은 머신 러닝 프레임워크를 사용하는 연구자를 주요 대상으로 하는 그래프코어의 아카데믹 프로그램(Academic Programme) 내 다른 이니셔티브를 보완하도록 설계되었습니다.
그래프코어는 컴퓨터 공학, 수리 과학, 물리학, 데이터 분석, 금융, 에너지, 화학, 공기역학, 생물학, 지리학과 같은 분야의 연구자들과 함께 학문적 스펙트럼을 넘나들며 협업하는 것을 목표로 하고 있습니다.
사용 사례로는 시뮬레이션 모델링, 구조 분석, 동영상 처리, 컴퓨터 금융, 유체 역학, 날씨 예측, 의료 영상, 석유 및 가스 탐사, 재생 에너지, 금융 보안, 대규모 통계 분석 등이 있습니다.
그래프코어의 IPU는 AI 및 머신 러닝을 위해 설계된 것이 아니었나요?
그래프코어 IPU 기술은 주로 AI 및 머신 러닝 워크로드를 위해 설계되었지만, 엄청난 잠재력으로 과학 분야에도 사용되고 있습니다. 이 과정에서 고도로 병렬화된 고성능 컴퓨팅을 지원하며 더 높은 에너지 효율로 신속한 결과를 도출하도록 하고 있습니다.
과학 소프트웨어는 처음부터 대규모 병렬식으로 설계되어 슈퍼컴퓨터에서 수만 개의 노드로 확장할 수 있습니다. 그러나 수치 알고리즘의 복잡한 데이터 종속성과 메모리 액세스 패턴으로 인해, 개별 노드가 계산 가능한 속도를 따르지 못하고 메모리 대역폭이나 통신 제약에 의해 애플리케이션 성능이 제한되기도 합니다. 그래프코어의 IPU는 바로 이러한 부분을 보완하여 성능을 향상시킬 수 있는 놀라운 기회를 제공합니다.
CPU는 스칼라 프로세스용으로 설계됐으며, GPU는 고밀도의 대규모 인접 데이터 블록을 처리하도록 설계됐습니다. 반면, IPU는 칩당 수천 개의 타일(코어)를 갖는 고유한 MIMD(다중 명령 다중 데이터) 분산 아키텍처를 활용하는 대규모 병렬 프로세서입니다. IPU의 각 타일은 자체 메모리를 갖는데, 많은 프로세서 코어에 인접해 배치되는 엄청난 양의 초고대역폭 온칩 메모리를 포함하고 있습니다..
IPU 타일은 고성능 BSP(Bulk Synchronous Communication)의 전방위적인 통신 아키텍처에서 매우 빠르게 데이터를 주고받을 수 있습니다. BSP를 사용하면 각 타일이 로컬 메모리에 저장돼 있는 데이터에 대한 연산을 수행하고, 연산이 끝나는 시점에 다른 타일과 데이터를 교환할 수 있습니다. 또한, 모든 타일이 이 작업을 수행하기 위해서는 동기화 돼야 합니다. 그래프코어의 Poplar SDK는 서로 다른 프로세서 코어 간 그리고 서로 다른 독립 병렬 프로그램 간의 모든 통신을 관리합니다.
이러한 실행 체계를 통해 IPU는 수십만 개의 타일에서도 작업을 효율적으로 병렬화할 수 있습니다. 이 같은 수준의 명시적 병렬 실행 제어는 대규모 스케일아웃 머신 전반에서 연산 집약적인 작업을 견고하고 확장 가능하도록 실행하는 데 필수적이나, 다른 모든 프로세서에서 지원되는 것은 아닙니다.
애초부터 IPU와 함께 설계된 그래프코어의 Poplar SDK는 성숙도가 높은 소프트웨어 스택으로, 타일 병렬 처리를 활용하고 하드웨어의 전체 성능을 극대화함으로써 세분화된 로우 레벨 프로그래밍을 가능케 합니다. Poplar는 개발을 위한 C++ 인터페이스를 제공할 뿐 아니라, 성능 조정을 위한 일련의 디버깅 및 분석 툴도 사용할 수 있기 때문에 IPU에서 실행되는 애플리케이션은 쉽게 프로그래밍할 수 있습니다. C++ 애플리케이션 개발에 대해 몇 가지 특히 주목할 만한 사례 연구는 아래에 링크되어 있습니다.
이러한 모든 기능으로 세분화된 병렬 처리가 지원되므로, 작은 컨볼루션을 사용하고 매우 적은 데이터 샘플을 병렬로 처리하면서 높은 처리량을 달성할 수 있습니다.
참가 방법
관련 양식을 작성하면 가속 컴퓨팅 아카데미에 지원하실 수 있습니다.
가속 컴퓨팅 아카데미는 과학 혁신을 위한 최첨단 연구를 지원하는 그래프코어의 아카데믹 프로그램 이니셔티브를 보완합니다. 고급 머신 러닝 및 AI 분야 연구에 관심이 있으시다면 그래프코어의 머신 인텔리전스 아카데미(Machine Intelligence Academy)에 대해 자세히 알아보세요.