2021.05.07

피스톤 2.2 출시··· “기본 파이썬보다 30% 더 빠르게 실행”

Paul Krill | InfoWorld
피스톤(Pyston) 버전 2.2가 지난 5월 5일(현지 시각) 릴리즈됐다. 피스톤은 JIT 컴파일 등을 사용해 실행 속도를 높이는 파이썬 런타임 대체 구현이다. 

이번 릴리즈에서 주목해야 할 새로운 특징이 있다. 바로 파이썬의 오리지널 라이선스 하에서 전체 소스 코드를 오픈소스 프로젝트로 사용할 수 있게 됐다는 점이다. 
 
ⓒGetty Images

개발팀에 따르면 피스톤 프로젝트의 목표는 2가지다. 첫째, 추가 작업 없이 기존 파이썬 배포 속도를 높일 수 있는 표준 파이썬 런타임 대체 구현(drop-in replacement)을 제공하는 것. 둘째, 피스톤에서의 개선사항이 파이썬 자체로 업스트림 될 수 있도록 하는 것이다. 

피스톤 2.2는 파이썬 3.8 버전을 기반으로 한다. 개발팀은 자체 웹 서버 벤치마크에서 피스톤 2.2가 기본 파이썬보다 약 30% 더 빠르게 실행됐다고 밝혔다. 경우에 따라 약 50% 더 빠르게 실행되기도 했다고 개발팀은 덧붙였다. 

한편 피스톤은 LLVM JIT 프레임워크를 사용해 파이썬 애플리케이션 속도를 높이고자 하는 야심 찬 프로젝트로 드롭박스(Dropbox)에서 시작됐지만, 지난 2017년 드롭박스의 지원 철회로 개발이 중단됐었다. 

--> “파이썬 속도 향상”··· 피스톤(Pyston), 개발 재개

기존 개발자 일부를 포함해 새롭게 구성된 피스톤 개발팀에서 제공하는 최신 버전의 피스톤은 다른 접근방식을 사용한다. 기본 C파이썬 코드로 시작하며, 이전 버전과의 호환성을 깨지 않고 성능을 향상시키는 데 도움을 주는 C파이썬을 변경한다. 

이러한 맥락에서 피스톤은 파이썬 런타임을 대체하는 또 다른 구현체인 파이파이(PyPy)와 다르다. 파이파이는 JIT 컴파일을 사용해 상당한 수준의 성능 개선을 지원한다. 하지만 파이파이는 파이썬, 특히 C로 작성된 파이썬 확장 프로그램과 완전한 호환성을 유지하는 데 오랫동안 어려움을 겪고 있다. 피스톤은 C파이썬 코드베이스에서 시작해 이 코드베이스와의 호환성을 유지한다.

피스톤 2.0가 공개됐을 당시에는 개발팀이 이 소프트웨어를 둘러싼 비즈니스 모델을 여전히 파악하고 있었기 때문에 오픈소스는 아니었다. 버전 2.2에서 피스톤 개발팀은 지원 서비스 판매를 비즈니스 모델로 삼고 있다고 밝혔다. 

피스톤의 개선사항이 C파이썬으로 업스트림 될 수 있을지는 보장되지 않는다. 그간 파이썬 개발팀은 성능보다 구현 및 유지관리의 단순성을 선호해왔기 때문에 JIT 컴파일과 같은 성능 개선 조치를 C파이썬에 추가하는 걸 피해왔다. 하지만 과거에는 C파이썬이 현재 사용하고 있는 PyPy의 사전 데이터 타입 구현체와 같이, 다른 파이썬 구현체의 개선사항이 채택된 적도 있다. ciokr@idg.co.kr
 



2021.05.07

피스톤 2.2 출시··· “기본 파이썬보다 30% 더 빠르게 실행”

Paul Krill | InfoWorld
피스톤(Pyston) 버전 2.2가 지난 5월 5일(현지 시각) 릴리즈됐다. 피스톤은 JIT 컴파일 등을 사용해 실행 속도를 높이는 파이썬 런타임 대체 구현이다. 

이번 릴리즈에서 주목해야 할 새로운 특징이 있다. 바로 파이썬의 오리지널 라이선스 하에서 전체 소스 코드를 오픈소스 프로젝트로 사용할 수 있게 됐다는 점이다. 
 
ⓒGetty Images

개발팀에 따르면 피스톤 프로젝트의 목표는 2가지다. 첫째, 추가 작업 없이 기존 파이썬 배포 속도를 높일 수 있는 표준 파이썬 런타임 대체 구현(drop-in replacement)을 제공하는 것. 둘째, 피스톤에서의 개선사항이 파이썬 자체로 업스트림 될 수 있도록 하는 것이다. 

피스톤 2.2는 파이썬 3.8 버전을 기반으로 한다. 개발팀은 자체 웹 서버 벤치마크에서 피스톤 2.2가 기본 파이썬보다 약 30% 더 빠르게 실행됐다고 밝혔다. 경우에 따라 약 50% 더 빠르게 실행되기도 했다고 개발팀은 덧붙였다. 

한편 피스톤은 LLVM JIT 프레임워크를 사용해 파이썬 애플리케이션 속도를 높이고자 하는 야심 찬 프로젝트로 드롭박스(Dropbox)에서 시작됐지만, 지난 2017년 드롭박스의 지원 철회로 개발이 중단됐었다. 

--> “파이썬 속도 향상”··· 피스톤(Pyston), 개발 재개

기존 개발자 일부를 포함해 새롭게 구성된 피스톤 개발팀에서 제공하는 최신 버전의 피스톤은 다른 접근방식을 사용한다. 기본 C파이썬 코드로 시작하며, 이전 버전과의 호환성을 깨지 않고 성능을 향상시키는 데 도움을 주는 C파이썬을 변경한다. 

이러한 맥락에서 피스톤은 파이썬 런타임을 대체하는 또 다른 구현체인 파이파이(PyPy)와 다르다. 파이파이는 JIT 컴파일을 사용해 상당한 수준의 성능 개선을 지원한다. 하지만 파이파이는 파이썬, 특히 C로 작성된 파이썬 확장 프로그램과 완전한 호환성을 유지하는 데 오랫동안 어려움을 겪고 있다. 피스톤은 C파이썬 코드베이스에서 시작해 이 코드베이스와의 호환성을 유지한다.

피스톤 2.0가 공개됐을 당시에는 개발팀이 이 소프트웨어를 둘러싼 비즈니스 모델을 여전히 파악하고 있었기 때문에 오픈소스는 아니었다. 버전 2.2에서 피스톤 개발팀은 지원 서비스 판매를 비즈니스 모델로 삼고 있다고 밝혔다. 

피스톤의 개선사항이 C파이썬으로 업스트림 될 수 있을지는 보장되지 않는다. 그간 파이썬 개발팀은 성능보다 구현 및 유지관리의 단순성을 선호해왔기 때문에 JIT 컴파일과 같은 성능 개선 조치를 C파이썬에 추가하는 걸 피해왔다. 하지만 과거에는 C파이썬이 현재 사용하고 있는 PyPy의 사전 데이터 타입 구현체와 같이, 다른 파이썬 구현체의 개선사항이 채택된 적도 있다. ciokr@idg.co.kr
 

X