My AI Smarteasy와 글 읽기 – GPU가 필요 없는 AI가 등장했습니다. 이제 CPU만으로 거대한 AI 모델을 실행할 수 있습니다!
GPU가 필요 없는 AI가 등장했습니다. 이제 CPU만으로 거대한 AI 모델을 실행할 수 있습니다! – YouTube
네, 일타 강사 저스틴입니다! 오늘 강의는 Fahd Mirza님의 유튜브 영상, “GPU가 필요 없는 AI가 등장했습니다. 이제 CPU만으로 거대한 AI 모델을 실행할 수 있습니다!”를 기반으로 진행됩니다. 이번 시간에는 인텔의 새로운 CPU 최적화를 통해 GPU 없이도 거대한 AI 모델을 실행할 수 있는 기술에 대해 알아보겠습니다. 자, 그럼 출발!
꿈은 이루어진다? CPU로 거대 AI 모델을!
파드 미르자님은 우리 모두가 엄청난 VRAM을 가진 저렴한 GPU가 나오기를 기다리고 있지만, CPU만으로 모든 크기의 모델을 실행할 수 있게 해주는 프로젝트가 있다면 어떨까요? 라는 질문으로 영상을 시작합니다 [i]. 그리고 바로 이 질문에 대한 해답이 이번 영상의 핵심 내용입니다.
SG Lang과 인텔 CPU의 만남
이 프로젝트는 SG Lang을 사용하는데, SG Lang은 원래 GPU 가속을 위해 설계된 LLM(대규모 언어 모델)을 위한 고성능 프레임워크입니다 [i]. 이번 개발에서 인텔의 PyTorch 팀은 인텔 Xeon 6 프로세서에 최적화된 네이티브 CPU 백엔드를 제공했습니다 [i]. 이를 통해 DeepCar 1과 같은 대규모 모델을 CPU 시스템에서 비용 효율적으로 배포할 수 있게 되었습니다 [i].
GPU 클러스터 없이도 거대 모델 실행 가능!
이는 매우 중요한 발전입니다. 왜냐하면 값비싼 GPU 클러스터 없이도 거대한 MoE(Mixture of Experts) 또는 기타 모델을 실행할 수 있기 때문입니다 [i]. 기존의 llama.cpp와 같은 CPU 솔루션과 비교했을 때, TTFT(Time To First Token, 첫 번째 토큰 생성 시간)는 약 614배 빨라졌고, 출력당 토큰 수는 24배 향상되었습니다 [i].
하지만, 넘어야 할 산이 많다!
하지만 너무 흥분하지 마세요! 파드 미르자님은 아직 많은 요구 사항과 어려움이 남아있다고 강조합니다 [i]. 하지만 좋은 시작이며, 그는 이 기술에 대한 과장된 기대나 섣부른 판단을 경계하며 있는 그대로의 정보를 제공하고자 합니다 [i].
하드웨어 요구 사항, 꼼꼼히 따져보자!
가장 먼저 살펴볼 것은 하드웨어 요구 사항입니다. 표를 통해 자세한 내용을 확인할 수 있는데, 요구 사항이 상당히 까다롭습니다 [i].
- 인텔 Xeon 스케일러블 프로세서: 6세대 Xeon 스케일러블 프로세서와 AMX(Advanced Matrix Extensions) 지원이 필요합니다 [i]. AMX는 변환기 모델 추론에 필수적인 행렬 연산을 위한 특수 명령을 제공하여 어텐션 메커니즘 및 조밀한 피드 포워드 네트워크의 효율적인 계산을 가능하게 합니다 [i].
- 멀티 NUMA 구성: 시스템 아키텍처는 텐서 병렬 처리를 위해 멀티 NUMA 구성을 지원해야 합니다 [i]. 이를 통해 높은 메모리 대역폭 효율성을 유지하면서 여러 CPU 소켓에 워크로드를 분산할 수 있습니다 [i].
- 고용량 DDR5 메모리: 최신 언어 모델의 방대한 매개변수 수로 인해 고용량 DDR5 메모리가 필수적입니다 [i]. 참조 구현에서는 1536GB의 메모리를 사용합니다 [i].
소프트웨어 요구 사항도 만만치 않다!
다음으로 살펴볼 것은 소프트웨어 요구 사항입니다 [i].
- 컨테이너화된 Linux 환경: 소프트웨어 스택은 Docker를 사용하는 컨테이너화된 Linux 환경을 기반으로 구축되어 배포를 단순화하고 다양한 시스템에서 일관된 성능을 보장합니다 [i].
- SG Lang 소스 빌드: CPU 백엔드 최적화는 코드베이스에 비교적 새로운 기능이므로, 미리 빌드된 패키지를 사용하는 대신 SG Lang을 소스에서 빌드해야 합니다 [i]. 또한, 현재 많은 호환성이 깨지는 변경 사항이 있습니다 [i].
- Docker 기반 접근 방식: Docker 기반 접근 방식은 필요한 모든 종속성을 포함하고 인텔 특정 명령어 세트 및 메모리 관리 전략을 사용하는 고도로 최적화된 커널을 위한 제어 가능한 환경을 제공합니다 [i].
성능 극대화를 위한 추가 설정!
몇 가지 성능 기능은 계산 처리량과 메모리 효율성을 극대화하는 특정 CPU 구성 설정에 의존합니다 [i].
- Sub NUMA 클러스터링: 최적의 메모리 로컬리티를 보장하고 소켓 간 메모리 액세스 페널티를 줄이려면 Sub NUMA 클러스터링을 활성화해야 합니다. 이는 대규모 모델 추론에 매우 중요합니다 [i].
- 하이퍼스레딩 및 터보 부스트: 추론 워크로드 중에 코어 활용률과 클럭 속도를 최대화하기 위해 하이퍼스레딩 및 터보 부스트가 활용됩니다 [i].
- 메모리 대역폭 효율성: 시스템은 신중하게 설계된 메모리 액세스 패턴과 캐시 인식 알고리즘을 통해 85%의 놀라운 메모리 대역폭 효율성을 달성합니다. 이를 통해 데이터 이동을 최소화하고 CPU 메모리 계층 구조의 활용률을 최대화합니다 [i].
모델 지원은 아직 제한적!
모델 지원은 아직 제한적이지만 계속 증가하고 있습니다 [i]. 현재 BF16, int8 등 다양한 양자화 형식을 지원합니다 [i]. 주요 초점은 희소 활성화 패턴과 엄청난 매개변수 수로 인해 고유한 문제를 나타내는 MoE 모델에 있는 것으로 보입니다 [i].
AMX 지원, 필수 불가결!
AMX 지원은 중요한 성능 이점을 얻기 위해 반드시 필요한 사항입니다 [i]. AMX가 없으면 시스템은 최적화된 커널보다 훨씬 느리게 수행되는 일반 x86 코드 경로로 대체됩니다 [i].
하드웨어 세대, 명확한 경계가 생기다!
이러한 요구 사항은 4세대 Xeon 프로세서(Sapphire Rapid 이상)만이 이러한 최적화의 이점을 누릴 수 있는 명확한 하드웨어 세대 경계를 만듭니다 [i]. 6세대 프로세서가 최상의 결과를 제공합니다 [i].
인텔 플랫폼에 특화!
이러한 최적화는 인텔에 특화되어 있으므로 AMD 또는 구형 인텔 아키텍처에서는 작동하지 않습니다 [i]. 즉, 플랫폼에 따라 다르다는 의미입니다. 하지만 Docker와 모든 최적화를 통해 다른 회사들도 곧 따라올 수 있을 것입니다 [i].
GPU 없이 AI 모델을 돌리는 시대가 올까?
파드 미르자님은 누군가가 저렴한 GPU를 출시하기를 기다리는 동안, 인텔, AMD 또는 다른 회사가 CPU에서 이러한 모델을 사용할 수 있도록 지원한다면 어떨까? 라는 질문을 던집니다 [i]. 물론 많은 어려움이 있겠지만, 만약 어느 날 갑자기 이런 일이 일어난다면 엔비디아의 주가는 어떻게 될까요? 현재 엔비디아 등에 의존하고 있는 주식 시장은 어떻게 될까요? 상상만 해도 흥미로운 일입니다.
오늘의 스폰서, Camel AI!
오늘 영상의 스폰서는 Camel AI입니다. Camel은 데이터 생성, 작업 자동화 및 세계 시뮬레이션에서 애플리케이션을 확장하는 데 중점을 둔 멀티 에이전트 인프라 구축에 주력하는 오픈 소스 커뮤니티입니다 [i].
강의 마무리
자, 오늘 강의는 여기까지입니다! 인텔의 CPU 최적화를 통해 GPU 없이도 거대한 AI 모델을 실행할 수 있는 기술, 흥미로우셨나요? 아직 넘어야 할 산이 많지만, CPU만으로 AI 모델을 돌리는 시대가 올 수도 있다는 희망을 품어봅니다. 다음 강의에서 또 만나요!