中文

解释型 Python 能有多快?

编程语言 2013-08-15 v2

摘要

Python 是一种流行的动态语言,其吸引力很大程度上源于强大的库和扩展模块。这些库增强了语言功能,使其成为从 Web 开发(Django)到数值分析(NumPy)等各种任务的高效环境。不幸的是,与现代实现的 Lua 和 JavaScript 等语言相比,Python 的性能相当差。为什么 Python 远远落后于这些其他语言?正如我们所示,正是那些使 Python 成为强大语言的 API 和扩展库,也使其难以高效执行。鉴于我们希望保留对 Python 现有优秀扩展库的访问权限,那么它能变得多快?为了评估这一点,我们设计并实现了 Falcon,这是一个与标准 CPython 解释器完全兼容的高性能字节码解释器。Falcon 应用了多种众所周知的优化技术,并引入了若干新技术以加速 Python 字节码的执行。在我们的评估中,Falcon 在大多数基准测试中平均比标准 Python 解释器快 25%,在某些情况下甚至快约 2.5 倍。

关键词

引用

@article{arxiv.1306.6047,
  title  = {How fast can we make interpreted Python?},
  author = {Russell Power and Alex Rubinsteyn},
  journal= {arXiv preprint arXiv:1306.6047},
  year   = {2013}
}

备注

Tech Report