NVIDIA는 AI 모델 추론 워크로드를 위한 전문화된 칩인 RC18 추론 프로세서를 시연함.
칩 제조사와 머신러닝 워크로드를 실행하는 조직 모두에게 훈련과 추론을 동일한 장치에서 수행할 수 있다면 편리하겠지만, 현재 Nvidia는 Tesla "Volta" GPU 가속기로 머신러닝 훈련에서 실질적인 독점을 유지하고 있습니다. 또한 최근 GeForce 그래픽카드에 사용되고 서버의 추론 오프로드를 위한 저전력 Tesla 변형에도 채택되는 "Turing" GPU로 초기 추론 분야에서 상당한 진전을 이루었습니다. Stanford University에서 개최된 최근 Hot Chips 31 컨퍼런스에서 우리는 지난 10년간 Nvidia Research를 주도해온 Bill Dally와 대화했습니다. Dally는 CalTech, MIT, Stanford에서 슈퍼컴퓨터와 인터커넥트를 설계하는 오랜 경력을 쌓았습니다. Dally는 인터커넥트에 관한 세 권의 저서를 공동 저술했습니다: "Digital Systems Engineering" (1998), "Principles and Practices of Interconnection Networks" (2004), "Digital Design: A Systems Approach" (2012).
Dally의 팀은 Hot Chips 컨퍼런스에서 128 teraops의 효율적인 추론 가속을 시연하기 위해 설계된 RC18 연구 칩을 공개했습니다. Dally에 따르면, "RC18 칩은 효율적인 추론 엔진입니다 – TSMC의 표준 16나노미터 공정으로 제작된 9.5 teraops per watt의 성능을 달성합니다." 이는 약 13.5와트의 전력 소비를 의미하며, 이러한 전력 특성과 성능 효율성은 추론 엔진을 찾는 하이퍼스케일러와 클라우드 인프라 구축자들에게 매력적입니다. Dally는 이 칩이 Nvidia Deep Learning Accelerator를 대체할 수 있음을 강조하면서 "실제로 NVDLA와 매우 유사하게 설계되었지만, 우리는 칩 자체만큼이나 도구에 많은 관심을 갖고 있습니다"라고 말했습니다. 팀은 "벡터 너비의 모든 조합, 벡터 유닛의 수, 버퍼 어레이의 크기, 루프 타일링 방법"을 테스트하는 설계 공간 탐색 도구를 개발했으며, 이 도구는 다양한 신경망에 대해 최적의 구성을 파악합니다.
벡터 연산에 최적의 매트릭스 크기에 대한 중요한 질문이 제기됩니다. Google의 TPU1은 256×256 매트릭스를 사용했고 TPU3는 이를 128×128으로 축소했으며, Intel의 Nervana 추론 칩은 32×32에서 작동합니다. RC18은 8×8 매트릭스를 사용합니다. Dally는 기본적인 트레이드오프를 설명했습니다: "매트릭스를 더 크게 만들면 정말 큰 행렬 곱셈에서는 약간 더 효율적이 되지만, 크기가 맞지 않을 때는 덜 효율적입니다. 정말 크게 만들면 외부 오버헤드를 더 분산시킬 수 있지만, 그것을 채울 수 없으면 단지 공간을 낭비하게 됩니다." 추론에 관해, Dally는 최적 범위가 "8×8과 16×16 사이의 어딘가이며 – 2의 거듭제곱으로 만드는 것이 좋습니다. 왜냐하면 모든 것을 매핑하기가 훨씬 쉬워지기 때문입니다"라고 봅니다. 그는 더 새로운 네트워크들이 더 작은 세분성을 요구할 수 있다고 예측하면서 "이것이 8×8에서 16×16 범위에 머물 것이라고 생각합니다"라고 말했습니다.
RC18은 전력 효율성을 목표로 한 혁신을 통합합니다. 모든 처리 요소를 단일 클록에서 실행하는 대신 – 이는 칩의 가장 낮은 전압 영역에 맞추기 위해 속도를 낮춰야 함 – 각 처리 요소는 "전원 공급을 추적하는 로컬로 생성된 별도의 클록에서" 실행됩니다. 이를 통해 칩은 "주파수를 바로 한계까지 실행한 후 전원 공급이 떨어질 때 다시 조절할 수" 있습니다. 그러나 이는 클록 도메인 간에 빠른 동기화가 필요합니다. Dally의 팀은 "평균적으로 반 클록 사이클" 동기화를 달성하는 동기화기를 개발했으며, 이는 일반적인 "한 클록 도메인에서 다른 클록 도메인으로 신호를 전달하는 데 5~6 클록 사이클"과 비교됩니다. 기술은 비동기 통신을 사용하여 "위험한 영역에만 있을 때 안전성을 확보하기 위해 추가 클록을 지연시킵니다. 하지만 이는 거의 발생하지 않으므로, 평균적으로 반 클록 사이클이 됩니다." 이 동기화 기술은 5월 International Symposium on Asynchronous Circuits and Systems (ASYNC)에서 최고 논문상을 수상했습니다.