PyPy는 「JIT 컴파일러를 내장한 파이썬 구현체」입니다.
CPython(공식) 대신 사용.
평균적으로 4~7배 빠르고 어떤 워크로드는 100배까지.
코드 변경 없음 — 그냥 인터프리터만 교체.
설치·사용.
pyenv install pypy3.10-x.x.x 또는 brew install pypy3.
python 대신 pypy 명령으로 같은 코드 실행.
import 가능한 라이브러리는 거의 다 동일 — pure Python 코드는 그대로 작동.
어디에 효과.
1) 순수 파이썬 알고리즘(루프·재귀).
2) 오래 도는 프로세스(JIT 워밍업 시간 회수).
3) 동적 디스패치 많은 코드.
4) 짧은 스크립트는 워밍업 시간 때문에 오히려 느릴 수도.
한계.
1) C 확장 호환성 — NumPy·pandas 같은 큰 C 확장은 동작하지만 CPython보다 느릴 수 있음.
2) 메모리 더 많이 씀.
3) 일부 라이브러리(특히 ctypes 의존) 호환 안 됨.
선택.
큰 라이브러리 의존도 높으면 CPython 유지.
순수 파이썬 알고리즘이 무거운 일을 하면 PyPy로 「인터프리터만 바꿔」 큰 속도 향상.
머신러닝·데이터 사이언스는 보통 CPython, 게임 서버·시뮬레이션은 PyPy 검토 가치.
한 줄 요약
PyPy는 JIT 내장 파이썬 인터프리터, 평균 4~7배 빠름.
코드 변경 없이 인터프리터만 교체.
순수 파이썬 알고리즘에 강하고, C 확장 무거우면 CPython 유지.
더 알아볼 것
- JIT 워밍업 비용
- PyPy 호환성 표
- HPy — C 확장 호환 개선 프로젝트