AI VIDEO BRIEFING

AI 시대의 컴파일러와 프로그래밍 언어: MIT 아마라싱헤 교수 PLDI 2026 기조연설 정리

MIT 사만 아마라싱헤 교수의 PLDI 2026 기조연설 정리. 머신러닝이 컴파일러를 보강하고 생성하고 대체하는 세 갈래 미래, 사람이 아닌 LLM을 위한 언어와 기록 형식을 새로 설계하자는 구상을 다룬다.

컴파일러는 사라질까: MIT 사만 아마라싱헤 교수가 PLDI 2026에서 던진 질문 영상 대표 이미지

핵심 메시지

  • 머신러닝과 컴파일러의 만남은 새로운 일이 아니다. 발표자 연구실은 2003년 유전 알고리즘으로 컴파일러 내부 판단 함수를 학습시킨 첫 사례를 만들었다.
  • 머신러닝이 컴파일러에 미칠 영향은 보강, 생성, 대체의 세 갈래로 나뉘며 갈수록 컴파일러 연구자에게 위협적이다.
  • 인텔 아키텍처 매뉴얼을 읽혀 벡터화 백엔드를 자동 생성한 사례에서는, LLVM이 10년 넘게 못 쓰던 명령어를 몇 시간 만에 활용해 코드를 네 개 명령어로 줄였다.
  • 영어는 모호하고 기계로 검증하기 어렵기 때문에 프로그래밍 언어를 완전히 대체하기 어렵지만, 현재의 '프롬프트와 코드' 조합도 좋은 기록 형식은 아니다.
  • 발표자는 앞으로 5년 안에 프로그래밍 도구가 지금과 전혀 달라질 것이라며, 프로그래밍 언어 학계가 이 재설계 기회를 잡아야 한다고 주장했다.

쉽게 이해하기

프로그래밍 언어 분야의 대표 학회 PLDI 2026 기조연설에 MIT 사만 아마라싱헤 교수가 올랐다. 그는 MIT 컴파일러 연구 그룹을 이끌며 이미지 처리 언어 할라이드, 스트리밍용 스트림잇 등을 만들었고 1993년부터 PLDI에 17편의 논문을 낸 인물이다. 이번 강연은 머신러닝이 컴파일러에 무엇을 하는가, 그리고 반대로 프로그래밍 언어 학계가 머신러닝 시대에 무엇을 해야 하는가라는 두 방향으로 구성됐다.

그는 머신러닝이 컴파일러에 미칠 영향을 세 갈래로 정리했다. 첫째는 보강이다. 컴파일러 곳곳에는 성능을 좌우하지만 결과를 미리 알 수 없는 판단 지점이 있는데, 2003년 그의 연구실은 유전 알고리즘으로 이 함수를 진화시켜 일반 프로그램에서 25%, 학습 대상 프로그램에서는 약 50%의 성능 향상을 얻었다. 다만 만들어진 함수는 사람이 읽고 배울 만한 것이 아니었다고 회고했다.

비용 모델 이야기가 이어졌다. 정수 선형 계획법으로 최적 스케줄을 찾은 시스템을 교사로 삼아 모방 학습한 후속 시스템이 오히려 교사보다 빠른 코드를 낼 때가 있었는데, 원인은 '최적'이 부정확한 비용 모델 기준의 최적이었기 때문이다. 실제로 LLVM MCA나 인텔의 비용 모델은 오차가 20% 수준이다. 이에 연구팀은 140만 개 기본 블록의 실측 실행 시간을 학습시켜 기존보다 두 배 정확한 비용 모델을 만들었고, 같은 접근이 XLA로 이어져 새 TPU가 나올 때마다 몇 달이 아니라 며칠 만에 모델을 다시 학습할 수 있게 됐다.

둘째는 컴파일러 자체의 생성이다. 인텔의 벡터 명령어 집합은 종류가 수천 개라 손으로 백엔드를 짜기 어렵다. 연구팀은 아키텍처 매뉴얼을 읽혀 백엔드를 자동 생성했고, 행렬-벡터 곱 커널에서 LLVM 계열이 아직 쓰지 못하던 내적 명령어를 활용해 전체 연산을 네 개 명령어로 압축했다. 마틴 리나드 교수의 사례도 소개됐다. 그는 34일 동안 혼자 약 4만 줄 규모의 검증형 컴파일러를 만들었는데, 코드는 한 줄도 읽지 않고 클로드와의 대화와 증명만 확인했다고 한다. 결과물이 지저분하더라도 정확성 증명이 함께 나온다면 내부를 몰라도 되지 않느냐는 것이 발표자의 문제 제기였다.

셋째는 대체다. 명세만 넣으면 컴파일러 없이 GPU 기계어를 바로 만들어내는 회사들이 이미 등장했다. 그는 이것이 컴파일러 연구자에게 가장 두려운 시나리오라고 인정하면서도, 프로그램과 아키텍처에 대한 축적된 지식을 에이전트 형태로 제공하고 정확성을 검증하는 역할로 학계가 기여할 수 있다고 봤다.

주요 인사이트

  • 발표자는 영어가 프로그래밍 언어를 대체하기 어려운 이유로 모호함, 기계 검증의 어려움, 조합의 어려움, 재현성 부족을 들었다. 같은 입력에 같은 결과를 보장하는 성질은 영어로는 얻기 어렵다는 것이다.
  • 동시에 LLM이 만든 새로운 조건도 짚었다. 토큰은 프로세서 사이클보다 훨씬 비싸므로 이제는 컴파일 시간이 아니라 토큰 사용량을 최적화할 여지가 생겼고, 컨텍스트 윈도는 사람이 기억할 수 있는 범위를 훨씬 넘어섰다.
  • 그는 사람이 아니라 LLM을 위해 설계된 중간 언어를 제안했다. 표현력과 정밀성을 갖추되 컴파일러가 잘하는 일은 넘기고 못 하는 일을 담당하며, 토큰을 아끼는 언어다. 대신 사람이 읽기 어려워지므로 디버깅 도구가 함께 필요하다.
  • '기록의 언어'라는 개념도 제시됐다. 깃허브에 올려 누구나 같은 도구 체인으로 같은 결과를 재현할 수 있어야 하는 것이 무엇인지 다시 정의하자는 제안으로, 지금처럼 프롬프트와 코드를 함께 두면 둘의 의미가 어긋나고 유지보수가 어려워진다는 문제의식이 깔려 있다.
  • LLM이 어셈블리에서 상위 수준 코드를 복원하는 능력이 좋아지면서, 낮은 수준에서 수정한 내용을 상위 표현으로 되올려 일관성을 유지하는 양방향 도구 체인도 가능해졌다고 봤다.

자주 묻는 질문

학습으로 만든 시스템이 '최적'보다 빠를 수 있는 이유는 무엇인가요?

여기서 최적은 특정 비용 모델을 기준으로 한 최적입니다. 정수 선형 계획법을 쓰려면 선형 비용 모델이 필요한데, 이는 비순차 실행 슈퍼스칼라 프로세서의 실제 실행 비용과 크게 어긋납니다. 그래서 그 기준으로 최적인 해가 실제 하드웨어에서는 더 느릴 수 있습니다.

코드를 한 줄도 읽지 않고 컴파일러를 만들었다는 사례가 왜 중요한가요?

AI가 만든 코드는 환각이나 품질 문제로 신뢰하기 어렵다는 지적이 많습니다. 이 사례에서는 컴파일러가 코드와 함께 변환이 원래 의미를 보존한다는 증명을 생성하고, 증명 검사기로 이를 확인합니다. 증명이 통과한다면 내부 코드를 사람이 읽지 않아도 된다는 반론이 성립한다는 것이 발표자의 문제 제기입니다.

발표자가 프로그래밍 언어 학계에 요청한 것은 무엇인가요?

머신러닝 컴파일러 분야의 영향력 있는 논문 상당수가 PLDI가 아닌 시스템 학회에 실렸고 일부는 PLDI에서 거절당했다는 점을 지적했습니다. 학제 간 연구에 덜 개방적이라는 평판이 굳어지기 전에 이 분야를 학회 안으로 끌어들여야 한다는 것이 그의 요청이었습니다.

새 언어가 좋은지 어떻게 평가할 수 있나요?

사람에게는 같은 과제를 더 적은 코드로, 더 짧은 시간에 정확히 작성할 수 있는지가 기준이 됩니다. LLM에는 더 적은 토큰으로 해결하는지가 기준이 될 수 있습니다. 다만 반나절 배운 학부생과 몇 주 써 본 개발자, 숙련자의 결과가 다르듯 평가가 간단하지 않고, 언어별로 모델을 새로 학습시켜 비교하려면 큰 비용이 든다는 한계도 언급됐습니다.

원문과 출처

이 글은 원본 영상의 자막을 바탕으로 한국어 독자를 위해 요약했습니다. 전체 맥락과 최신 정보는 원문에서 확인하세요.

YouTube 원본 영상 보기 ↗

관련 AI 소식