AI-PROPELLER: AlphaEvolve를 이용한 창고 규모의 절차 간 코드 레이아웃 최적화
요약
AI-PROPELLER은 Magellan 에이전트 워크플로를 활용하여 절차 간(interprocedural) 코드 레이아웃을 최적화하는 기술입니다. 실제 하드웨어 성능 카운터를 보상 신호로 사용하는 진화 루프를 통해 대규모 애플리케이션에서 유의미한 성능 향상을 입증했습니다.
핵심 포인트
- 절차 간 코드 레이아웃 최적화의 복잡성 해결
- Magellan 에이전트 워크플로를 통한 정책 미세 조정
- 정적 모델 대신 실제 하드웨어 성능 기반 보상 활용
- 대규모 창고 규모 애플리케이션에서 최대 1.6% 성능 향상
Propeller 및 BOLT와 같은 포스트 링크 최적화 도구 (Post-link optimizers, PLOs)는 정밀한 프로파일 기반 (profile-guided) 코드 레이아웃이 고도로 최적화된 바이너리로부터 상당한 성능 이득을 끌어낼 수 있음을 입증했습니다. 그러나 이러한 시스템들은 현재 절차 내 (intraprocedural) 기술로 제한되어 있어, 절차 간 (interprocedural) 레이아웃의 전역적인 잠재력은 여전히 활용되지 않은 채 남아 있습니다. 절차 간 코드 레이아웃은 조합론적으로 다루기 힘든 탐색 공간과 모델링하기 어려운 복잡한 호출-반환 (call-return) 의미론으로 인해 역사적으로 구현하기 어려웠습니다. 결과적으로, 미세 조정된 절차 간 레이아웃의 성능 잠재력은 실제 환경에서 아직 입증되지 않은 상태입니다. AI-PROPELLER은 Magellan을 사용합니다. Magellan은 Propeller의 컴파일러 휴리스틱 (compiler heuristic)을 미세한 절차 간 최적화 도구로 진화시키고, 결과적으로 생성된 정책의 하이퍼파라미터 (hyperparameters)를 미세 조정하는 에이전트 워크플로 (agentic workflow)입니다. 높은 충실도 (high-fidelity)를 보장하기 위해, 우리는 근사적인 정적 비용 모델 (static cost models)에서 벗어나며, 에이전트 워크플로는 실제 하드웨어에서 실행되어 실제 성능 카운터 (performance counters)를 측정하는 여러 레이아웃 변형을 생성함으로써 진화 루프 (evolutionary loop)에 정밀한 보상 신호 (reward signal)를 제공합니다. AI-PROPELLER은 대규모 창고 규모 애플리케이션을 포함한 여러 벤치마크에서 평가되었으며, 실험 결과 최첨단 FDO 및 PLO로 최적화된 상태에서 0.23%에서 1.6%의 성능 향상을 보여주었습니다. 이는 실제 바이너리 환경에서 매우 유의미한 수치입니다. 이는 산업 현장의 대규모 창고 규모 애플리케이션이 미세한 절차 간 코드 레이아웃으로 최적화된 최초의 사례입니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 arXiv Codex (cs.SE)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기