8호04 / 05
CPython 실험적 JIT, 본선에서 빠진다 — PEP 836 철회, '끌고 갈 여력이 없다'
원문 LWN.net ↗
이 소식의 앞선 글 · Python 3.15 — 지연 import, frozendict, UTF-8 기본, 그리고 JIT가 처음으로 빨라졌다 (2026년 10월 9일)
10월 9일 Python 3.15 글에서 "JIT가 처음으로 빨라졌다"고 썼습니다. 그 JIT가 다음 버전에서 빠집니다. LWN의 Joe Brockmeier가 10월 26일 정리한 경위입니다.
어떻게 여기까지 왔나
- 2024년 초: Brandt Bucher가 3.13용으로 실험적 JIT를 머지. PEP 없이 머지 의사를 밝히자 운영위원 Thomas Wouters가 PEP를 요구했고, Bucher와 Savannah Ostrowski가 정보성 PEP 744를 썼습니다.
- 2026년 6월: 운영위원회가 main에서의 JIT 작업을 멈추고, 유지보수·호환성·성공 지표·일정을 담은 표준 트랙 PEP가 승인되지 않으면 6개월 뒤 제거하겠다고 했습니다. Wouters는 "단일 계기는 없다"며 계측·디버깅·프로파일링 작업, CinderX·Numba·PyTorch compile 같은 외부 JIT를 들었습니다. 결정은 3.15 베타 이후로 미뤄 3.15 현상 유지를 분명히 했습니다.
- 7월 3일: PEP 836 "JIT Go Brrr" 공개. Ostrowski·Ken Jin·Bucher. Mark Shannon과 Wouters는 둘로 쪼개야 한다고 했고 저자들은 반박했습니다.
- 9월 21일: 운영위원회(공저자 Ostrowski 제외)가 "일부는 덜 설득력 있지만" 질문에 답했다며 10개 지적을 냈습니다. 메모리 영향, 보안, 플랫폼 동등성, 사용자가 보는 동작 차이. 특히 3.17 첫 RC(2028년 8월 예상)로 잡힌 호환성 검토는 "너무, 너무 늦다"고 했습니다.
- 10월 19일: Ostrowski가 철회. 기술 방향(자유 스레딩 지원, 메서드 기반 프런트엔드)은 여전히 믿으며, 참조 구현을 공개해 PEP에 링크하겠다고 했습니다.
숫자
PEP 836이 적은 현재 성능은 Tier 1 플랫폼에서 pyperformance 기하평균 4~12% 우위입니다. 6월 측정치는 M3 Pro(JIT+TAILCALL) 12.6%, AmpereOne 7.3%, i5-8400 6.9%, Ryzen 5 3600X(Windows) 4.7%. 목표는 3.16 베타에서 GIL 빌드 대비 5% 이상, 3.17 베타에서 자유 스레딩 인터프리터 대비 20% 이상이었습니다.
앞으로
Brett Cannon은 main 저장소에서의 작업은 멈추고, 다른 곳에서 이어갈지는 커뮤니티에 달렸다고 했습니다. 기한 전 대체 PEP 가능성에는 "JIT를 이끌던 사람들이 곧 이 PEP의 저자"라 어렵다고 봤습니다. 제거는 3.16 개발 주기 초반에 이뤄질 가능성이 높습니다. 원래 주역들이 계속할지는 불분명하며, LWN의 문의에 저자들은 게재 시점까지 답하지 않았습니다.
글에 없는 것
제거 커밋이나 정확한 시점, copy-and-patch 코드의 행방, tail-call 인터프리터와의 관계. PyPy·GraalPy 언급은 본문이 아닌 댓글입니다.
실무에서 할 일
JIT를 켜서 측정한 3.15 수치는 3.16에서 재현되지 않습니다. 성능 계획에 "JIT가 성숙하면"이 들어 있었다면 지우세요. 3.11의 적응형 인터프리터와 3.15의 지연 import는 그대로이고, 자유 스레딩도 이 결정과 별개로 진행됩니다. 큰 폭의 속도가 필요한 코드는 PyPy나 네이티브 확장 쪽으로 계획을 바꾸는 게 맞습니다.
8호의 다른 글
요약으로 한 번에 보기 →- 01Node2Shell에서 HTTP2Shell로 — Brotli 디코더 RCE가 Node를 넘어 Python·Bun·Envoy까지
- 02macOS의 git·curl·python3는 아직 eMudhra 인증서를 믿는다 — 통보 11일째, 27.2 업데이트가 수동 조치를 되돌렸다
- 03Tailscale SSH 'Tailworm' — 패치 전 공개된 11건, 포워딩 경로로 루트와 등록 키까지
- 04CPython 실험적 JIT, 본선에서 빠진다 — PEP 836 철회, '끌고 갈 여력이 없다'지금 읽는 글
- 05Claude Code가 백그라운드 에이전트 전사를 30초마다 모델에 보낸다 — 상태 줄 다섯 단어에 지출의 16%
2026년 10월 27일에 올라온 글
그날 대시보드 →댓글
불러오는 중…