DL Boost는 Intel이 x86-64 플랫폼에서 사용하는 일련의 명령어 집합 아키텍처(ISA) 기능에 대한 마케팅 이름으로, 훈련 및 추론과 같은 딥러닝 작업의 성능을 향상시키도록 설계되었다. 이 기능은 Skylake-SP 서버 프로세서 라인을 계승한 Cascade Lake 아키텍처와 함께 도입되었다. DL Boost는 합성곱 신경망 및 트랜스포머 기반 모델을 포함한 인공지능 애플리케이션에서 흔히 볼 수 있는 워크로드를 대상으로 하며, 특정 수학 연산에 대한 하드웨어 수준 가속을 제공한다.
이 계획은 칩 제조업체들이 일반 목적 컴퓨팅 기능을 보완하면서 머신러닝 워크로드를 위한 특수 명령어를 추가하는 광범위한 추세를 반영한다. Intel은 DL Boost를 GPU와 같은 전용 가속기 없이도 표준 x86 서버에서 AI 추론 및 훈련의 비용과 지연 시간을 줄이는 방법으로 포지셔닝했다.
명령어 집합 기능
DL Boost는 두 가지 주요 명령어 집합으로 구성된다. 첫 번째 집합인 AVX-512 VNNI(벡터 신경망 명령어)는 4VNNIW 또는 AVX-VNNI로도 알려져 있으며, 주로 이미지 인식 모델과 같은 합성곱에 의존하는 신경망을 대상으로 하는 빠른 곱셈-누적 연산을 제공한다. 이러한 명령어는 512비트 벡터에서 작동하여 클록 주기당 여러 연산을 허용한다.
두 번째 집합인 AVX-512 BF16은 bfloat16 부동소수점 형식에 대한 지원을 도입한다. 이는 표준 float32의 지수 범위를 유지하지만 가수 정밀도는 줄인 16비트 표현이다. 이 형식은 낮은 정밀도 계산을 위해 설계되어 허용 가능한 모델 정확도를 유지하면서 훈련 및 추론을 가속화할 수 있다. 명령어에는 float32와 bfloat16 간의 변환과 여러 값을 효율적으로 결합하는 내적 연산이 포함된다.
두 기능 집합 모두 Cascade Lake 프로세서 및 이후 세대(Ice Lake 및 후속 서버 및 클라이언트 제품 포함)에서 사용할 수 있다. 명령어는 표준 컴파일러 및 런타임 지원을 통해 소프트웨어에 노출되어 TensorFlow 및 PyTorch와 같은 프레임워크가 자동으로 활용할 수 있게 한다.
성능 및 벤치마킹
Google Cloud Platform Compute Engine에서 실행된 TensorFlow 기반 벤치마크는 DL Boost가 이러한 명령어가 없는 이전 Intel CPU에 비해 성능을 향상시키고 비용을 줄일 수 있음을 입증했다. 벤치마크는 지연 시간이 처리량보다 더 중요한 실시간 추론 시나리오에서 흔한 작은 배치 크기에 특히 유리함을 보여주었다.
GPU와 비교하여 벤치마크는 DL Boost가 장착된 CPU가 특히 모델이 작거나 배치 크기가 제한된 경우 특정 워크로드에서 경쟁력 있거나 우수한 비용 효율성을 제공할 수 있음을 나타냈다. 이는 CPU가 개별 GPU를 사용할 때 필요한 별도 메모리 공간 간 데이터 전송 오버헤드를 피하기 때문이다. 결과는 Andres Rodrigues와 동료들이 쓴 Intel 백서 "Lower Numerical Precision Deep Learning Inference and Training"에 게시되었다.
소프트웨어 생태계 및 채택
DL Boost에 대한 지원은 주요 딥러닝 프레임워크 및 컴파일러 툴체인에 통합되었다. Intel 자체 OpenVINO 툴킷과 oneAPI 딥 뉴럴 네트워크 라이브러리(oneDNN)는 명령어에 대한 최적화된 경로를 제공한다. TensorFlow 및 PyTorch를 포함한 타사 프레임워크는 AVX-512 VNNI 및 BF16에 대한 백엔드 지원을 추가하여 개발자가 모델을 수정하지 않고도 혜택을 누릴 수 있게 했다.
원래 Google Brain이 개발한 bfloat16 형식은 업계 전반에 걸쳐 더 널리 채택되었으며, 다른 하드웨어 공급업체도 이를 구현했다. DL Boost에 BF16을 포함시킨 Intel의 결정은 x86 플랫폼에서 형식을 표준화하여 훈련 및 추론 시스템 간 상호 운용성을 촉진하는 데 도움이 되었다.
다른 가속기와의 비교
DL Boost는 AWS Trainium, Groq의 텐서 스트리밍 프로세서, Graphcore의 IPU와 같은 전용 AI 가속기와 경쟁한다. 이러한 특수 칩과 달리 DL Boost는 일반 목적 CPU 내에서 작동하여 추가 하드웨어나 복잡한 시스템 통합이 필요하지 않다. 이는 이미 x86 서버를 실행하는 기존 데이터 센터에 매력적이다.
그러나 대규모 언어 모델의 대규모 훈련의 경우 전용 가속기가 일반적으로 더 높은 원시 처리량과 메모리 대역폭을 제공한다. DL Boost는 추론과 CPU의 유연성이 유리한 더 작은 훈련 작업에 더 일반적으로 사용된다. 정밀도와 속도 간의 절충은 메모리 사용량과 계산 시간을 줄이면서 많은 경우 모델 품질을 보존하는 bfloat16 형식을 통해 관리된다.
향후 방향
Intel은 후속 프로세서 세대에서 DL Boost를 계속 발전시켜 더 고급 명령어를 추가하고 새로운 AI 워크로드에 대한 지원을 개선했다. 회사는 또한 DL Boost를 클라우드 환경에 널리 배포된 Xeon 스케일러블 프로세서와 통합했다. AI 모델이 더 복잡해짐에 따라 CPU 기반 가속의 역할은 특히 전력 효율성과 낮은 지연 시간이 중요한 엣지 컴퓨팅 및 실시간 애플리케이션에서 여전히 중요하다.
이 접근 방식은 AMD의 유사한 명령어 확장과 같은 다른 x86 공급업체의 노력을 반영하며, 이기종 컴퓨팅으로의 광범위한 산업 움직임을 나타낸다. DL Boost는 NVIDIA 및 Qualcomm과 같은 회사의 특수 가속기가 점점 지배하는 AI 하드웨어 시장에서 관련성을 유지하려는 Intel 전략의 일부이다.