실제 슈퍼컴퓨터 벤치마크로 LLM HPC 코드 최적화 강화
초록
본 논문은 대규모 언어 모델(LLM)이 생성한 HPC 코드의 실행 성능을 직접 측정하고, 그 측정값(GFLOPS)을 보상으로 활용하는 온라인 강화학습 프레임워크를 제안한다. 또한 단계별 최적화 제약을 점진적으로 완화하는 Staged Quality‑Diversity(SQD) 알고리즘을 도입해, 모델이 다양한 최적화 경로와 오류 복구 전략을 스스로 학습하도록 설계하였다. Qwen2.5 Coder 14B를 매트릭스 곱셈 과제에 적용한 실험 결과, 런타임 기반 보상과 SQD가 결합될 때 코드 성능이 크게 향상됨을 보였다.
상세 분석
이 연구는 HPC 분야에서 LLM 기반 코드 자동 생성이 “동작 여부”만을 목표로 하는 기존 접근과 달리, 실제 하드웨어에서 측정된 연산 성능을 직접 보상으로 사용한다는 점에서 혁신적이다. 보상 함수는 6단계의 페널티(포맷/라이브러리 위반, 컴파일 오류, 타임아웃, 런타임 오류, 검증 오류)와 성공 시 GFLOPS를 결합해, 코드가 단계별 파이프라인을 통과하도록 유도한다. 특히, 성공 보상을 단순 GFLOPS가 아닌 “그룹 정규화된 비율”(GFLOPS / 그룹 최고 × 100)으로 정의함으로써, 각 최적화 단계에서 상대적인 성능 차이를 강조한다.
학습 알고리즘으로 선택된 Group Relative Policy Optimization(GRPO)은 기존 PPO가 필요로 하는 가치 함수(critic)를 제거하고, 동일 프롬프트에 대해 샘플링된 G개의 코드 집합을 기준으로 평균 보상을 베이스라인으로 삼는다. 이 방식은 메모리 사용량을 크게 절감하면서도, “내 집단 내에서 더 나은 코드”를 생성하도록 모델을 압축한다. 논문에서는 KL 페널티 β를 조절해 원본 모델과의 거리 제한을 실험했으며, β = 0일 때 탐색이 활발히 진행돼 급격한 성능 점프가 관찰되었다.
SQD 알고리즘은 6단계의 최적화 제약을 정의하고, 각 단계별 허용 기술(레지스터 차단, 캐시 차단, AVX‑512 SIMD, OpenMP, 프리패치)을 정규표현식으로 검출한다. 매 학습 반복에서 풀(pool) 내 코드를 상위 40%는 다음 단계로 전이, 중위 30%는 동일 단계에서 변형, 하위 30%는 오류 복구를 목표로 재생성한다. 이렇게 구성된 트리 구조는 탐색‑학습‑수정의 순환을 통해 모델이 “최적화 로직”과 “오류 복구 메커니즘”을 동시에 습득하게 만든다.
시스템 아키텍처는 GPU 기반 LLM 훈련 클러스터와 CPU 기반 벤치마크 클러스터를 물리적으로 분리하고, 코디네이터 노드가 SSH 터널링으로 양쪽을 연결한다. 이 설계는 서로 다른 하드웨어 환경을 자유롭게 조합할 수 있게 하며, 대규모 코드 샘플(실험에서는 G = 64)을 실시간으로 컴파일·실행·보상 계산하는 파이프라인을 구현한다.
실험 1에서는 고정 프롬프트 8개와 12가지 하이퍼파라미터 조합(O0/O3, 학습률 2e‑7/5e‑7, KL β 0/0.001/0.01)을 탐색했다. O3 최적화 레벨이 적용된 경우 평균 보상이 7078에 도달했으며, 특히 β = 0, 학습률 5e‑7 조합에서 54 → 225 GFLOPS(≈4배) 급증을 보였다. 반면 O0에서는 715 수준에 머물렀다. 이는 컴파일러 최적화가 모델이 학습한 코드 품질에 큰 영향을 미침을 시사한다.
실험 2에서는 SQD를 적용해 6단계 최적화를 순차적으로 해제했으며, 각 단계별 성능 차이를 그룹 정규화 보상으로 반영했다. 결과적으로 모델은 초기 단계에서 레지스터 차단 정도의 간단한 최적화만을 구현하다가, 점차 SIMD, OpenMP, 프리패치를 포함한 복합 최적화 코드를 스스로 생성하게 되었다. 최종적으로는 549 GFLOPS에 달하는 성능을 기록했으며, 이는 동일 하드웨어에서 hand‑tuned OpenBLAS(≈500 GFLOPS)와 경쟁할 수준이다.
전체적으로 이 논문은 (1) 실시간 하드웨어 피드백을 활용한 RL 기반 코드 최적화, (2) 단계적 제약을 통한 다양하고 점진적인 탐색, (3) 메모리 효율적인 GRPO 적용이라는 세 축을 결합해, LLM이 단순 문법·정답 맞춤을 넘어 실제 HPC 성능을 최적화하도록 만든 최초 사례 중 하나로 평가할 수 있다.
댓글 및 학술 토론
Loading comments...
의견 남기기