CUDA-L2: Surpassing cuBLAS Performance for Matrix Multiplication through Reinforcement Learning
이 논문은 대규모 언어 모델과 강화 학습을 활용하여 반정밀도 일반 행렬 곱셈(HGEMM) 커널을 자동으로 최적화함으로써, 인간 엔지니어가 수행하기에는 불가능한 규모의 구성 공간을 체계적으로 탐색하여 torch.matmul, cuBLAS, cuBLASLt와 같은 기존 베이스라인보다 상당한 성능 향상을 달성하는 시스템인 CUDA-L2를 소개한다.
원본 논문은 CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) 라이선스로 제공됩니다. 이것은 아래 논문에 대한 AI 생성 설명입니다. 저자가 작성하거나 승인한 것이 아닙니다. 기술적 정확성을 위해서는 원본 논문을 참조하세요. 전체 면책 조항 읽기
당신이 완벽한 케이크를 굽기 위해 노력하고 있다고 상상해 보세요. 수년 동안 세계 최고의 제빵사들(인간 전문가)은 "행렬 곱셈(Matrix Multiplication)"이라는 특정 종류의 케이크를 위한 레시피를 미세하게 조정해 왔습니다. 이 케이크는 거의 모든 현대적 AI 두뇌의 핵심 재료입니다. 그들은 이 케이크를 더 빠르게 만들기 위해 수년간 노력해 왔지만, 하나의 벽에 부딪혔습니다. 케이크의 크기가 바뀔 때마다(작은 컵케이크에서 거대한 웨딩 케이크까지), 매번 처음부터 다시 시작해야 했기 때문입니다. 한 크기에서 효과적이었던 기술이 다른 크기에서는 실패하는 경우가 많았습니다. 이는 마치 거대한 수프를 먹으려고 아주 작은 숟가락을 사용하는 것과 같습니다. 도구가 크기에 맞지 않는 것입니다.
여기에 CUDA-L2가 등장합니다. 이는 초지능형 언어 모델과 비디오 게임 스타일의 학습 방식인 강화 학습(RL)을 결합하여 만들어진 새로운 "AI 제빵사" 팀입니다. CUDA-L2는 인간에게 최상의 레시피를 묻는 대신, "시도하고, 실패하고, 배우고, 다시 시도하는" 거대한 게임을 수행합니다.
핵심 발견: AI가 더 빠른 케이크를 굽다
이 논문의 주요 결과는 CUDA-L2가 이러한 행렬 곱셈 "레시피"(커널이라고 불림)를 자동으로 설계하고, 현재 사용 가능한 최고의 인간 제작 레시피보다 더 빠르게 구워낼 수 있다는 것입니다.
연구진은 이를 1,000가지 다른 케이크 크기(64에서 16,384 사이의 차원 M, N, K의 조합)에 대해 테스트했습니다. 이 크기들은 Qwen, Llama, DeepSeek와 같은 유명한 오픈 소스 AI 모델에서 사용되는 정확한 차원들을 포괄합니다.
AI가 현재의 챔피언들보다 얼마나 더 빠르게 굽는지에 대한 수치는 A100 GPU에서 다음과 같이 측정되었습니다:
- 표준 도구(torch.matmul) 대비: 연속적인 베이킹 세션(오프라인 모드)에서 CUDA-L2는 22.0% 더 빠릅니다. 주문이 무작위로 들어오는 바쁜 주방(서버 모드)에서는 28.7% 더 빠릅니다.
- 골드 스탠다드(cuBLAS) 대비: NVIDIA 자체의 고도로 최적화된 라이브러리인 cuBLAS를 상대로도 CUDA-L2가 승리했습니다. 연속 모드에서 19.2%, 서버 모드에서 26.0% 더 빠릅니다.
- "자동 최적화 도구(cuBLASLt-AutoTuning)" 대비: 이것이 가장 중요한 비교입니다. cuBLASLt-AutoTuning은 최적의 레시피를 찾기 위해 최대 100개의 서로 다른 레시피를 시도합니다. 그럼에도 CUDA-L2는 연속 모드에서 11.4%, 서버 모드에서 15.9% 더 앞섭러 나갑니다.
연구진은 이 수치들을 단순히 추측하거나 시뮬레이션한 것이 아니라, 코드를 수천 번 직접 실행하여 측정했기 때문에 이 결과에 매우 확신하고 있습니다.
AI가 하지 못한 것
이 시스템이 무엇을 하지 않는지 아는 것도 중요합니다. 논문은 현재 버전의 CUDA-LL2가 A100 아키텍처로 제한되어 있다고 명시적으로 밝히고 있습니다. 하지만 이 프레임워크는 폭넓은 적용 가능성을 위해 설계되었으며, 팀은 RTX 3090과 같은 이전 세대의 Ampere 칩뿐만 아니라, 새로운 Hopper(예: H100) 및 Blackwell(예: B200) 칩으로 확장하기 위해 적극적으로 노력하고 있습니다. 또한 논문은 인간 전문가들이 행렬 곱셈을 "해결"했다는 생각에 반론을 제기합니다. AI가 더 나은 레시피를 찾아냈다는 사실은 인간의 튜닝이 결코 완벽하지 않음을 증명합니다.
AI가 더 나은 케이크를 굽는 법을 배운 방법
AI는 단순히 추측한 것이 아니라, 인간 전문가들이 모든 가능성을 확인하기에는 너무 바빠서 놓칠 수 있는 구체적이고 영리한 기술들을 배웠습니다.
- 케이크에 패딩(Padding) 넣기: 당신에게 8,192인치 너비의 케이크가 있는데, 당신의 베이킹 팬은 너비가 160으로 나누어떨어져야만 딱 맞게 들어간다고 가정해 봅시다. 8,192는 160으로 나누어떨어지지 않습니다. 인간은 "128 사이즈의 팬을 쓰겠다"라고 말할 수 있습니다. 하지만 AI는 "160인치 팬을 사용할 수 있도록 약간의 반죽(패딩)을 더 추가해서 케이크 너비를 8,320인치로 만들겠다"라고 말했습니다. 이 약간의 추가 작업이 전체 과정을 실제로 더 빠르게 만들었습니다.
- 핑퐁 전략: 보통 베이커는 재료를 싣고, 섞고, 그다음 배치를 싣습니다. AI는 "핑퐁" 방식을 찾아냈습니다. 믹서가 배치 A를 섞는 동안, 조수는 이미 배치 B를 위한 재료를 준비하고 있습니다. 이렇게 하면 믹서가 기다릴 필요가 없습니다.
- "엇박자" 배달: 때때로 AI는 재료 A와 B를 동시에 요청하면 주방에 교통 체증이 발생한다는 것을 깨달았습니다. 대신, 재료 A를 요청하고 섞기 시작한 후에 재료 B를 요청했습니다. 이는 주방이 원활하게 돌아가도록 유지했습니다.
- 적절한 팬 크기 선택: AI는 작은 케이크에는 작은 팬이 가장 잘 맞고, 거대한 케이크에는 훨씬 더 큰 팬이 필요하다는 것을 배웠습니다. AI는 1,000가지 서로 다른 크기에 대해 모든 차원을 계산하는 데 인간의 평생이 걸릴 수도 있는 작업을 완벽한 크기로 찾아냈습니다.
"서버" 모드와 "오프라인" 모드의 차이
논문은 또한 주방 환경에 대해 흥미로운 점을 발견했습니다.
- 오프라인 모드: 공장 라인에서 케이크가 멈추지 않고 차례대로 구워지는 상황을 상상해 보세요. 오븐은 뜨겁게 유지되고, 작업자들은 일정한 리듬을 가지고 있습니다. 여기서 AI는 경쟁자보다 11.4%에서 22.0% 더 빨랐습니다.
- 서버 모드: 주문이 무작위로 들어오는 바쁜 레스토랑을 상상해 보세요. 주문 사이에 오븐이 식을 수도 있고, 작업자들이 다시 예열 시간이 필요할 수도 있습니다. 이 "실제 세상의 혼돈" 속에서 AI의 우위는 오히려 커졌으며, 경쟁자를 **15.9%에서 28.7%**까지 앞질렀습니다. 논문은 이것이 AI의 레시피가 이러한 "콜드 스타트(cold starts)"와 예측 불가능한 일시 정지 현상을 더 잘 처리하기 때문이라고 설명합니다.
결론
이 논문은 행렬 곱셈처럼 매우 중요하고 고도로 최적화된 작업이라 할지라도, LLM 가이드 강화 학습이 인간이 확인할 수 없는 거대한 가능성의 공간을 탐색함으로써 인간보다 더 나은 솔루션을 찾을 수 있다고 결론짓습니다. 이 특정 버전의 CUDA-L2는 현재 A100 GPU에 국한되어 있지만, 프레임워크는 향후 다른 칩들로 확장될 수 있도록 설계되었습니다.
요약하자면, AI는 단순히 레시피를 수정하는 데 그치지 않았습니다. AI는 인간이 생각하지 못했던 완전히 새로운 방식으로 케이크를 굽는 법을 발견했으며, 이는 GPU 최적화라는 성숙한 분야에서도 여전히 개선의 여지가 많다는 것을 입증했습니다.
연구 분야의 논문에 파묻히고 계신가요?
연구 키워드에 맞는 최신 논문의 일일 다이제스트를 받아보세요 — 기술 요약 포함, 당신의 언어로.