소셜 네트워크, 광고 플랫폼 등에서 활발히 사용되는 추천 시스템 특정 기능이 있습니다. 응답성이 높아야 하지만 동시에 AI 모델은 100GB 이상으로 상당히 방대합니다. 효율적인 작업을 위해서는 상당히 큰 캐시도 필요합니다. 추론을 위해 CPU(메모리는 많지만 속도는 상대적으로 낮음) 또는 GPU(속도는 높지만 메모리는 거의 없음)가 가장 많이 사용되지만 이 작업에는 그다지 효율적이지 않습니다.
동시에 하이퍼스케일러의 물리적 제한도 있습니다. 본격적인 PCIe 슬롯과 서버의 여유 공간이 많지 않고 전력 소비 및 냉각(대부분 공기)에 대한 엄격한 제한이 있습니다. RISC-V 아키텍처 기반 칩 개발을 전문으로 하는 Esperanto는 이 모든 것을 고려했습니다. 다른 날 그녀는 자신이 Supercomputer-on-Chip이라고 부르는 ET-SoC-1 AI 가속기의 첫 번째 샘플을 받았습니다.
참신함은 효율성이 가장 중요한 주변부를 포함하여 추천 시스템을 추론하기 위한 것입니다. 회사는 자체적으로 어려운 작업을 설정했습니다. 메모리 및 서비스 배관이 있는 전체 가속기 범위는 120와트를 넘지 않아야 합니다. 이 문제를 해결하려면 많은 트릭을 적용해야 했습니다. 가장 첫 번째이자 가장 분명한 것은 선형 성능 성장으로 다른 유사한 칩과 결합될 수 있는 비교적 작지만 보편적인 칩의 생성입니다.
높은 수준의 병렬성을 달성하려면 이러한 칩은 작지만 에너지 효율적인 코어를 기반으로 해야 합니다. 이것이 64비트 RISC-V 코어를 선택하게 된 이유입니다. ISA 관점에서 뿐만 아니라 트랜지스터 예산 측면에서도 "단순"하기 때문입니다. ET-SoC-1 칩은 두 가지 유형의 RISC-V 코어를 결합합니다. 고전적인 "대형" 코어(ET-Maxion)와 비순차적 실행, 단 4개의 "소형" 코어(ET-Minion)가 있습니다. 텐서 및 벡터 계산 지원 - 최대 1088
범용 작업은 ET-Maxion 코어에 할당되며 AI 컴퓨팅에 직접 참여하지 않지만 ET-SoC-1에서 Linux를 직접 실행할 수 있으므로 완전히 자율적입니다. 주변기기용 RISC-V 프로세서가 하나 더 있으면 이 작업에 도움이 됩니다. 그러나 ET-Minion 커널은 매우 간단합니다. 명령의 비순차적 실행이 없지만 SMT2와 벡터 및 텐서를 사용한 INT 및 FP 작업을 위한 새로운 명령 세트를 지원합니다.
각 클록 주기에 대해 ET-Minion 코어는 INT32 결과, 16개의 FP32 작업 또는 32 - FP16을 저장하는 동안 128개의 INT8 작업을 수행할 수 있습니다. "긴" 텐서 연산은 512 사이클(최대 64,000 연산) 동안 계속 실행할 수 있으며, 이 시간 동안 정수 블록은 전원을 절약하기 위해 꺼집니다. 캐시 시스템은 다소 특이한 방식으로 배열됩니다. 코어당 4개의 메모리 뱅크가 있으며 데이터용 L1 캐시와 고속 범용 메모리(스크래치패드)로 사용할 수 있습니다.
8개의 ET-Minion 코어는 공통 명령 캐시 주위에 "쿼터"를 형성합니다. 이러한 작업은 모든 코어에 대해 동일한 명령을 가질 가능성이 높기 때문입니다. 또한 8개의 개별 캐시보다 에너지 효율이 높으며 큰 청크로 데이터를 주고받을 수 있으므로 L2 캐시의 부하가 줄어듭니다. 8개의 "블록"은 스위치와 개인 L2 캐시, 공유 L3 캐시의 일부 또는 스크래치 패드로 사용할 수 있는 4개의 1MB SRAM 뱅크가 있는 "이웃"을 형성합니다.
메시 네트워크를 통해 소구역은 서로 통신하고 ET-Maxion, 8개의 듀얼 채널 메모리 컨트롤러, 2개의 PCIe 4.0 x8 루트 컴플렉스, 하드웨어 RoT와 같은 다른 장치와 통신합니다. 전체적으로 이 칩은 약 160MB의 SRAM을 차지합니다. RAM 컨트롤러는 LPDDR4x-4267 ECC 모듈(256비트, 최대 137GB/s)을 지원합니다. ET-Minion의 클럭 속도 범위는 500MHz ~ 1.5GHz이고 ET-Maxion의 범위는 500MHz ~ 2GHz입니다.
Glacier Point V2 OCP 블록의 일부로 회사는 6개의 ET-SoC-1(총 6558 RISC-V 코어)을 하나의 보드에 결합하여 192GB 메모리(822GB/s)를 제공합니다. NVIDIA A100(80GB). 이러한 번들은 800개 이상의 상판을 개발하며 120와트만 필요합니다. 평균적으로 20와트 미만의 소비로 칩당 100 - 200개의 탑입니다. 이를 통해 소형 M.2 모듈을 만들거나 반대로 시스템을 더 확장할 수 있습니다. Yosemite v2 섀시는 64개의 칩을 수용할 수 있으며 랙에는 이미 384개의 칩이 있습니다.
추천 시스템에 대한 MLPerf 테스트에서 앞서 언급한 와트당 6개 칩 번들의 성능은 Intel Xeon Platinum 8380H(250W)보다 123배, NVIDIA보다 2~3배 높은 것으로 나타났습니다. A10(150W) 및 T4(70W). 칩에 대한 '불편한' ResNet-50 테스트에서 CPU와 Habana Goya 가속기의 차이는 그다지 크지 않지만 NVIDIA 솔루션에서는 반대로 더 눈에 띕니다.
동시에 개발자들은 소프트웨어 지원에 대해서도 생각했습니다. 에스페란토 칩은 널리 퍼진 프레임워크인 PyTorch, TensorFlow, MXNet 및 Caffe2와 작동할 수 있을 뿐만 아니라 기성품 ONNX 모델도 수용할 수 있습니다. C++용 SDK와 x86 호스트용 드라이버도 있습니다.
프로토타입은 7nm 공정 기술을 사용하여 TSMC에서 제조됩니다. 570mm2 면적의 크리스탈에는 240억 개의 트랜지스터가 들어 있습니다. 이 칩에는 45 × 45mm2 크기의 BGA2494 패키지가 있습니다. 전력 소비(및 성능)는 10 ~ 60+ 와트 범위에서 조정할 수 있습니다. 테스트 칩은 연말까지 잠재 고객에게 제공될 예정입니다. 회사는 또한 다른 워크플로 및 공장에 ET-SoC-1을 적용할 준비가 되어 있지만 OCP 플랫폼을 기반으로 한 데모와 Cooper Lake와의 비교는 Esperanto가 첫 고객 사이에서 이를 보고 기뻐할 것이라는 분명한 암시입니다. .
2021-08-26 07:49:09
작가: Vitalii Babkin