Py学习  »  Python

微软发布 Python 的 JIT 编译器:Pyjion

Python开发 • 2 年前 • 186 次点击  
👇👇关注后回复 “进群” ,拉你进程序员交流群👇👇

出品 | OSC开源社区

用于 Python 3.10 及以上版本的嵌入式 JIT 编译器 Pyjion 已发布 1.0 版本。

Pyjion 拥有以下特性:

  • 配置文件引导的 JIT 编译器

  • 原生 64 位浮点数和整数支持

  • 小而快的编译器

  • 支持 Windows、macOS 和 Linux

  • 支持 Intel 和 ARM CPU

  • 内置 IL 和 ASM 反汇编器

  • 支持本机调试和分析工具

Pyjion 是由 Python 软件基金会研究员和微软研究员 Anthony Shaw  合作开发的一种用于 Python 的即时 (JIT) 编译系统,它不是像 PyPy 那样的独立 runtime,而是在 CPython 3.10 下运行的可安装库。

安装后,只需导入 Pyjion 库并启用,即可在程序中使用:导入后运行的所有内容都属于 JIT 编译。

项目地址:https://www.trypyjion.com

Pyjion 的工作原理是通过 .NET EE 编译器将 Python 虚拟机操作码编译成汇编语言,基准测试表明:在实际工作中,Pyjion 比常规 Python 快两到三倍,部分优化允许加速10倍,常规算术的速度可以快一个数量级

Pyjion 包含一个中间件层,允许 WSGI 应用程序在 Pyjion 下运行,因此像 web 应用这种长时间运行的应用程序非常适合 JIT 加速。

目前,有一些 Python 特性还不能在 Pyjion 中实现,比如 block 和 async/await,不过这些特性都已经在 Pyjion 的路线图中。

由于各种各样的原因,让 Python 变得更快非常困难。大多数提高 Python 速度的方法仍然依赖于 Python C API 来实现兼容性,性能也会受到限制。

Pyjion 也不例外,它仍然依赖 Python C API,但  Pyjion 的优化计划(例如,优化对数组类型的访问)表明,它的开发人员已经在思考如何处理这些问题。

Pyjion 1.0 依赖项:

  • CPython 3.10 :

    https://www.python.org/downloads/release/python-3100

  • .NET 6 :

    https://dotnet.microsoft.com/download/dotnet/6.0



-End-

最近有一些小伙伴,让我帮忙找一些 面试题 资料,于是我翻遍了收藏的 5T 资料后,汇总整理出来,可以说是程序员面试必备!所有资料都整理到网盘了,欢迎下载!

点击👆卡片,关注后回复【面试题】即可获取

在看点这里好文分享给更多人↓↓

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/125606
 
186 次点击