AutoKernel, GPU 커널 최적화를 AI 에이전트에게 맡기면 생기는 일

RightNow AI가 공개한 AutoKernel의 Profile-Extract-Optimize-Verify 루프와 최적화 기법, Qwen 3.5 대상 12배 성능 향상 사례를 정리한다

2026-08-14 · 최초 발행 2026-03-14

GPU 커널 최적화는 수년간의 경험을 요구하는 고도의 전문 영역으로, 대부분의 개발자에게는 접근하기 어려운 작업이었다. RightNow AI가 개발한 오픈소스 프레임워크 AutoKernel은 이 복잡한 과정을 AI 에이전트가 자율적으로 수행하도록 설계된 도구로, PyTorch 모델을 입력으로 받아 최적화된 Triton 또는 CUDA C++ 커널을 자동으로 생성한다. Andrej Karpathy의 autoresearch 프로젝트에서 영감을 받아 개발된 이 도구는 2026년 3월 공개 이후 빠른 관심을 받고 있다.

AutoKernel의 정체

AutoKernel은 AI 에이전트 기반의 GPU 커널 자동 최적화 프레임워크다. MIT 라이선스로 공개된 오픈소스 프로젝트(GitHub: RightNow-AI/autokernel)로, Python으로 구현되었으며 공개 직후 500개 이상의 스타를 받았다.

핵심 아이디어는 단순하다. 개발자가 PyTorch 모델을 제공하면, AutoKernel의 AI 에이전트가 프로파일링부터 최적화, 검증까지의 전 과정을 자율적으로 반복 수행하며 성능을 극대화한다. 이 과정에서 에이전트는 program.md라는 "research org code"를 사용해 자신의 작업 계획과 진행 상황을 관리한다.

처리 흐름: Profile에서 Verify까지

AutoKernel의 처리 흐름은 네 단계로 구성된다.

YesNoPyTorch 모델 입력(1) Profile성능 병목 분석(2) Extract커널 후보 추출(3) Optimize Loop자율 최적화 반복성능 향상?Keep변경 사항 유지Revert이전 상태로 복구(4) Verify정확도 검증 (5단계)최적화된 커널 출력

Profile: PyTorch 모델의 성능 병목 지점을 분석한다. 어느 연산이 가장 많은 시간을 소비하는지, GPU 리소스가 어떻게 활용되는지를 측정한다.

Extract: 프로파일링 결과를 바탕으로 최적화가 필요한 커널 후보를 추출한다. 에이전트는 현재 구현의 특성을 분석하고 개선 방향을 도출한다.

Optimize: 에이전트가 자율적으로 edit → benchmark → keep/revert 루프를 반복한다. 코드를 수정하고 성능을 벤치마크한 뒤, 향상이 있으면 유지하고 저하되면 복구한다. 이 루프는 수렴할 때까지 반복된다.

Verify: 최적화된 커널이 원본과 동일한 결과를 생성하는지 5단계 정확도 검증을 수행한다. 성능은 향상되었지만 정확도가 떨어지는 커널은 채택되지 않는다.

15 TFLOPS에서 177.5 TFLOPS까지, 기법이 쌓인 궤적

AutoKernel이 NVIDIA RTX 5090에서 Qwen 3.5 (35B, W4A16 양자화) 모델을 대상으로 적용한 최적화 과정은 AI 에이전트가 어떻게 단계적으로 성능을 끌어올리는지 잘 보여준다.

기준선 성능은 15 TFLOPS였으며, 최종 결과는 177.5 TFLOPS로 약 12배의 향상을 달성했다. cuBLAS 대비 2.66배, 이론적 최대 성능 대비 42%에 해당하는 수치다.

AutoKernel 최적화 단계별 성능 향상 (TFLOPS)기준선AutotuningL2 SwizzlingPersistent KernelsFlat K-LoopCompile-Time Constants200180160140120100806040200TFLOPS

Autotuning (18가지 설정): 기준선 15 TFLOPS에서 106 TFLOPS로 향상. 에이전트가 18가지 서로 다른 커널 설정을 자동으로 탐색하여 최적 구성을 선택한다.

L2 Cache Swizzling: 106 → 137 TFLOPS. L2 캐시 히트율을 40~50% 향상시키는 메모리 접근 패턴 최적화를 적용한다. 행렬 타일의 배치 순서를 재조정해 캐시 재사용성을 극대화한다.

Persistent Kernels: 137 → 156 TFLOPS. 수천 개의 단기 커널 실행을 680개의 장기 실행 커널로 대체한다. 커널 런치 오버헤드를 크게 줄이고 SM 점유율을 안정화한다.

Flat K-Loop: 156 → 170 TFLOPS. branch divergence를 제거하는 루프 구조 변경을 적용한다. 워프 내 스레드들이 서로 다른 분기를 실행하는 상황을 최소화해 SIMT 효율성을 높인다.

Compile-Time Constants: 170 → 177.5 TFLOPS. 런타임 나눗셈 연산을 컴파일 타임에 결정되는 비트 시프트 연산으로 대체한다. 단순해 보이지만 반복적으로 호출되는 커널에서는 상당한 성능 차이를 만든다.

전문 지식부터 회귀 테스트까지, 에이전트가 넘겨받은 일

기존의 GPU 커널 최적화는 다음 과정을 필요로 했다.

  1. CUDA 또는 Triton 언어 전문 지식 보유
  2. GPU 아키텍처 내부 동작 이해 (캐시 계층, 워프 스케줄링, SM 구조 등)
  3. 수동 프로파일링 및 병목 분석
  4. 반복적인 코드 수정과 벤치마크
  5. 정확도 회귀 테스트

AutoKernel은 이 모든 과정을 에이전트에게 위임한다. 개발자는 PyTorch 모델만 제공하면 되며, 나머지는 에이전트가 자율적으로 처리한다. 이는 AI 모델 배포 최적화의 진입 장벽을 크게 낮추는 접근 방식이다.

실증의 의미와 남은 한계

AutoKernel이 보여주는 성과는 단순한 도구 이상의 의미를 지닌다. AI 에이전트가 저수준 시스템 최적화 작업을 자율적으로 수행할 수 있음을 실증한 사례다.

특히 주목할 점은 에이전트가 단순히 사전 정의된 레시피를 적용하는 것이 아니라, 실제 측정값을 기반으로 의사결정을 내린다는 점이다. keep/revert 루프는 에이전트가 시행착오를 통해 최적 경로를 탐색하는 구조로, 인간 전문가의 실험적 접근 방식을 모방한다.

다만 몇 가지 고려사항도 있다. 현재 성능 수치는 NVIDIA RTX 5090이라는 특정 하드웨어 환경에서 특정 모델(Qwen 3.5 35B W4A16)을 대상으로 측정된 결과다. 다양한 GPU 아키텍처와 모델 구조에서의 일반화 성능은 추가적인 검증이 필요하다. 또한 자동 생성된 커널의 유지보수성과 재현 가능성도 실무 도입 시 고려해야 할 요소다.

15 TFLOPS에서 177.5 TFLOPS로의 12배 성능 향상은 단순한 벤치마크 수치를 넘어, 에이전트 기반 시스템 최적화의 가능성을 구체적으로 입증한 사례다. 앞으로 이러한 접근 방식이 더 다양한 하드웨어와 모델 아키텍처로 확장되고 자동화 수준이 높아질수록, AI 모델 배포의 경제성은 크게 달라질 수 있다.

Sources

AutoKernelGPU 커널 최적화AI 에이전트TritonCUDA