매니코어 프로세서
매니코어 프로세서(manycore processor)는 높은 수준의 병렬 처리를 위해 설계된 특별한 종류의 멀티 코어 프로세서로, 수십 개에서 수천 개 이상의 단순하고 독립적인 프로세서 코어를 포함한다. 매니코어 프로세서는 임베디드 시스템과 고성능 컴퓨팅 분야에서 광범위하게 사용된다.
멀티코어 아키텍처와의 대조
[편집]매니코어 프로세서는 멀티 코어 프로세서와 달리 처음부터 높은 수준의 명시적 병렬성과 지연 시간 및 낮은 단일 스레드 성능을 희생하면서도 높은 처리량(또는 낮은 전력 소비)을 위해 최적화되었다.
반면, 광범위한 범주의 멀티 코어 프로세서는 일반적으로 병렬 및 직렬 코드를 모두 효율적으로 실행하도록 설계되었으며, 따라서 높은 단일 스레드 성능에 더 중점을 둔다(예: 비순차적 명령어 처리, 더 깊은 파이프라인, 더 많은 슈퍼스칼라 실행 장치, 더 크고 일반적인 캐시에 더 많은 실리콘을 할당하고 공유 메모리를 사용). 이러한 기술은 단일 스레드에서 내재된 병렬성을 파악하는 데 런타임 자원을 투입한다. 이들은 단일 코어 프로세서에서 (하위 호환성을 유지하며) 지속적으로 발전해 온 시스템에 사용된다. 이들은 일반적으로 '소수의' 코어(예: 2, 4, 8)를 가지며, 이기종 시스템에서 매니코어 가속기(예: GPU)로 보완될 수 있다.
동기
[편집]캐시 일관성은 멀티코어 프로세서의 확장성을 제한하는 문제이다. 매니코어 프로세서는 메시지 전달[1], 스크래치패드 메모리, DMA[2], 분할 전역 주소 공간[3] 또는 읽기 전용/비일관성 캐시와 같은 방법을 통해 이를 우회할 수 있다. 네트워크 온 칩과 로컬 메모리를 사용하는 매니코어 프로세서는 소프트웨어에게 태스크의 공간적 레이아웃을 명시적으로 최적화할 기회를 제공한다(예: 트루노스를 위해 개발된 툴링에서 볼 수 있듯이).[4]
매니코어 프로세서는 고성능 컴퓨팅에서 유래한 클러스터 및 벡터 프로세서와 같은 기술과 (개념적으로) 더 많은 공통점을 가질 수 있다.[5]
GPU는 여러 셰이더 처리 장치를 가지며, 고도로 병렬적인 코드에만 적합한(높은 처리량, 그러나 매우 낮은 단일 스레드 성능) 매니코어 프로세서의 한 형태로 간주될 수 있다.
프로그래밍 모델
[편집]- 메시지 전달 인터페이스
- OpenCL[6] 또는 컴퓨트 커널을 지원하는 다른 API
- 분할 전역 주소 공간
- 행위자 모델
- OpenMP[7]
- 데이터 흐름
매니코어 시스템의 분류
[편집]- GPU, 매니코어 벡터 프로세서로 설명될 수 있다.
- 대규모 병렬 프로세서 배열
- 비동기 단순 프로세서 배열
- 공간 아키텍처
특정 매니코어 아키텍처
[편집]- ZettaScaler [1], 일본 PEZY Computing의 2,048코어 모듈
- 제온 파이 코프로세서 (MIC(Many Integrated Cores) 아키텍처)
- 틸레라
- 아답테바 에피파니 아키텍처, PGAS 스크래치패드 메모리를 사용하는 매니코어 칩
- 코히런트 로직스 hx3100 프로세서, 하이퍼X 아키텍처 기반 100코어 DSP/GPP 프로세서
- 모비디우스 마이리아드 2, 매니코어 비전 처리 장치 (VPU)
- 칼레이, 데이터 집약적인 작업을 위한 매니코어 PCI-e 가속기
- 테라플롭스 연구 칩, 메시지 전달을 사용하는 매니코어 프로세서
- 트루노스, 매니코어 네트워크 온 칩 아키텍처를 가진 AI 가속기
- 그린 어레이, 저전력 애플리케이션을 목표로 메시지 전달을 사용하는 매니코어 프로세서
- Sunway SW26010, 당시 세계 1위 슈퍼컴퓨터인 선웨이 타이후라이트에 사용된 260코어 매니코어 프로세서
- 아이어리스, 임베디드 비전 애플리케이션을 위한 컨볼루션 신경망 실행을 위해 설계된 매니코어 프로세서[10]
- 그래프코어, 매니코어 AI 가속기
100만 개 이상의 CPU 코어를 가진 특정 매니코어 컴퓨터
[편집]멀티코어 프로세서로 구축된 많은 컴퓨터들이 100만 개 이상의 개별 CPU 코어를 가지고 있다. 다음은 그 예시이다:
- 교코 (일본어: 暁光 헵번: gyōkō, 새벽 빛), ExaScaler와 PEZY Computing이 개발한 슈퍼컴퓨터로, 총 20,480,000개의 처리 요소와 1,250개의 인텔 제온 D 호스트 프로세서를 포함한다.
- 스피나커, 인간 뇌 프로젝트의 일환으로 구축된 대규모 병렬 (100만 CPU 코어) 매니코어 프로세서(ARM 기반).
5백만 개 이상의 CPU 코어를 가진 특정 컴퓨터
[편집]꽤 많은 슈퍼컴퓨터가 5백만 개 이상의 CPU 코어를 가지고 있다. 코프로세서, 예를 들어 GPU가 함께 사용될 경우 해당 코어는 코어 수에 포함되지 않으므로, 더 많은 컴퓨터가 이러한 목표를 달성할 수 있다.
- 프론티어
- 후가쿠, 후지쯔 A64FX ARM 기반 코어를 사용하는 일본 슈퍼컴퓨터로 총 7,630,848개 코어.
- 선웨이 타이후라이트, 대규모 병렬 (1천만 CPU 코어) 중국 슈퍼컴퓨터로, 한때 세계에서 가장 빠른 슈퍼컴퓨터 중 하나였으며, 커스텀 매니코어 아키텍처를 사용한다. 2018년 11월 기준으로 TOP500 목록에서 세계에서 세 번째로 빠른 슈퍼컴퓨터였으며, 각각 256개의 코어를 포함하는 40,960개의 SW26010 매니코어 프로세서에서 성능을 얻었다.
같이 보기
[편집]각주
[편집]- ↑ Mattson, Tim (January 2010). “The Future of Many Core Computing: A tale of two processors” (PDF).
- ↑ Hendry, Gilbert; Kretschmann, Mark. “IBM Cell Processor” (PDF). 2022년 6월 15일에 원본 문서 (PDF)에서 보존된 문서. 2025년 8월 1일에 확인함.
- ↑ Olofsson, Andreas; Nordström, Tomas; Ul-Abdin, Zain (2014). “Kickstarting High-performance Energy-efficient Manycore Architectures with Epiphany”. arXiv:1412.5538 [cs.AR].
- ↑ Amir, Arnon (2015년 6월 11일). “IBM SyNAPSE Deep Dive Part 3”. IBM Research. 2024년 12월 10일에 원본 문서에서 보존된 문서. 2025년 8월 1일에 확인함.
- ↑ “cell architecture”."The Cell architecture is like nothing we have ever seen in commodity microprocessors, it is closer in design to multiprocessor vector supercomputers"
- ↑ Rick Merritt (2011년 6월 20일), “OEMs show systems with Intel MIC chips”, 《www.eetimes.com》 (EE Times)
- ↑ Barker, J; Bowden, J (2013). 〈Manycore Parallelism through OpenMP〉. 《OpenMP in the Era of Low Power Devices and Accelerators》. IWOMP. Lecture Notes in Computer Science, vol 8122. Springer. doi:10.1007/978-3-642-40698-0_4.
- ↑ Morgan, Timothy Prickett (2021년 2월 10일). “A First Peek At China's Sunway Exascale Supercomputer”. 《The Next Platform》 (미국 영어). 2021년 11월 18일에 확인함.
- ↑ Hemsoth, Nicole (2021년 4월 19일). “China's Exascale Prototype Supercomputer Tests AI Workloads”. 《The Next Platform》 (미국 영어). 2021년 11월 18일에 확인함.
- ↑ Chen, Yu-Hsin; Krishna, Tushar; Emer, Joel; Sze, Vivienne (2016). “Eyeriss: An Energy-Efficient Reconfigurable Accelerator for Deep Convolutional Neural Networks”. 《IEEE International Solid-State Circuits Conference, ISSCC 2016, Digest of Technical Papers》. 262–263쪽.
외부 링크
[편집]- Architecting solutions for the Manycore future, 2010년 2월 19일 게시 (슬라이드에 유효하지 않은 링크가 하나 이상 있음)
- Eyeriss architecture