인공지능 ·
CUDA-L2, 강화학습으로 NVIDIA cuBLAS 성능 뛰어넘어...A100 GPU에서 뛰어난 최적화 성능 입증
대규모 언어모델과 강화학습 결합한 자동 최적화 시스템, NVIDIA 상용 라이브러리 대비 일관된 속도 향상 달성
[한국정보기술신문] 인공지능 스타트업 딥리인포스AI가 개발한 CUDA-L2 시스템이 NVIDIA의 상용 행렬 연산 라이브러리인 cuBLAS의 성능을 체계적으로 넘어서는 결과를 공개했다. 이 시스템은 대규모 언어모델과 강화학습을 결합해 CUDA 커널을 자동으로 최적화하는 혁신적인 접근법을 사용한다.
CUDA-L2는 반정밀도 일반 행렬 곱셈 연산을 위한 CUDA 커널을 자동으로 최적화하는 시스템으로, 지난 12월 2일 A100 GPU에 최적화된 1000개 구성의 HGEMM 커널을 공개했다. 연구팀은 논문을 통해 CUDA-L2가 널리 사용되는 torch.matmul부터 NVIDIA의 최신 비공개 라이브러리인 cuBLAS, cuBLASLt-heuristic, cuBLASLt-AutoTuning에 이르기까지 주요 행렬 곱셈 기준선들을 일관되게 능가한다고 밝혔다.
1000개 구성에서 일관된 성능 우위 확인
연구팀이 A100 GPU에서 1000개의 서로 다른 (M,N,K) 행렬 구성을 대상으로 실시한 벤치마크 결과, CUDA-L2는 모든 비교 대상보다 빠른 실행 속도를 기록했다. 특히 NVIDIA의 상용 솔루션인 cuBLAS와 cuBLASLt의 휴리스틱 및 자동 튜닝 버전과 비교해서도 지속적인 속도 향상을 보여줬다.
이러한 성능 개선은 대규모 언어모델의 추론 능력과 강화학습의 최적화 능력을 결합한 독특한 접근 방식에서 비롯된다. 시스템은 주어진 하드웨어 환경과 행렬 크기에 최적화된 커널을 자동으로 생성하고 튜닝할 수 있다.
오픈소스 공개로 연구 생태계 활성화 기대
딥리인포스AI는 GitHub를 통해 CUDA-L2의 소스코드와 사전 최적화된 커널을 공개했다. 프로젝트는 Python과 PyTorch 2.6.0 이상 버전, NVIDIA CUTLASS v4.2.1을 기반으로 구축되었으며, A100 아키텍처를 대상으로 한다.
연구팀은 현재 16비트 누산기를 사용하는 HGEMM만 지원하지만, 향후 32비트 누산기 지원, 더 조밀한 행렬 구성, RTX 3090이나 H100 같은 다른 GPU 아키텍처로의 확장을 계획하고 있다. 또한 오픈소스 대규모 언어모델에 쉽게 배포할 수 있는 방안도 준비 중이다.
실용성 고려한 다양한 실행 모드 제공
CUDA-L2는 오프라인 배치 처리 모드와 서버 모드를 모두 지원한다. 사용자는 워밍업 시간, 벤치마크 지속 시간, GPU 장치 ID 등을 지정할 수 있으며, 서버 모드에서는 초당 쿼리 수를 설정해 요청 기반 시나리오를 시뮬레이션할 수 있다.
연구팀은 사용자가 필요로 하는 행렬 차원이 사전 최적화된 구성에 없을 경우, 가장 가까운 구성을 찾아 0으로 패딩하거나 GitHub 이슈를 통해 해당 구성의 커널 제공을 요청할 수 있다고 안내했다. 문의사항은 jiwei_li@deep-reinforce.com으로 연락하면 된다.
행렬 연산 최적화의 새로운 패러다임 제시
이번 연구는 GPU 연산 최적화 분야에서 인공지능 기술이 전통적인 수작업 최적화나 휴리스틱 기반 접근법을 넘어설 수 있음을 보여준다. 행렬 곱셈은 딥러닝 모델의 학습과 추론에서 가장 많은 연산 시간을 차지하는 핵심 연산으로, CUDA-L2의 성능 개선은 인공지능 워크로드 전반의 효율성 향상으로 이어질 수 있다.
연구팀은 향후 더 다양한 GPU 아키텍처와 행렬 구성을 지원하며, 실제 프로덕션 환경에서의 적용성을 높여나갈 계획이다. 관련 논문은 arXiv에 공개되었으며, 소스코드는 GitHub의 deepreinforce-ai/CUDA-L2 저장소에서 확인할 수 있다.
한국정보기술신문 인공지능분과 김주호 기자 news@kitpa.org