Py学习  »  Python

Python指导委员会计划接受PEP 703提案,让全局解释器锁成为可选

OSC开源社区 • 9 月前 • 199 次点击  
出品 | OSC开源社区(ID:oschina2013)
CPython 核心开发者 Thomas Wouters 今日代表 Python 指导委员会宣布了关于 PEP 703 提案(在 CPython 中使全局解释器锁成为可选)的最新进展。
他表示,从社区对 no-GIL 提案的民意调查结果来看,整体是积极的支持态度。因此 Python 指导委员会计划接受 PEP 703 提案,目前正在研究相关细节。
Thomas Wouters 介绍了指导委员会的预期想法:
  • 从长远来看(可能 5 年以上),no-GIL 构建应该是唯一的构建。他们不希望在出现 GIL 和 no-GIL 构建(以及扩展模块)之间创建永久的区分

  • 保持向后兼容,避免出现另一种 Python 3 的情况

  • 承诺完全切换到 no-GIL 构建之前,需要看到社区对其的支持

  • 在将 no-GIL 作为默认设置之前的任何时候,如果事实证明它会带来太大的破坏性而收益太少,他们会改变想法。这样的决定可能意味着回滚所有工作,因此在确定要将 no-GIL 设置为默认值之前,特定于 no-GIL 的代码应该在某种程度上是可识别的。

基于此,他们的开发方向分为三个阶段:
  • 短期内,将 no-GIL 构建添加为实验性构建模式,大概是在 Python 3.13 提供

  • 从中期来看,当确信有足够的社区支持来使 no-GIL 的生产使用可行后,他们会支持 no-GIL 构建,但不是默认

  • 从长远来看,他们希望 no-GIL 成为默认值,并删除 GIL 的任何痕迹(不会不必要地破坏向后兼容性)


PEP 703 提案建议向 CPython 添加构建配置 (--disable-gil),使其在没有全局解释器锁的情况下运行 Python 代码,并进行必要的更改以保证解释器线程安全。
根据提案的描述,CPython 的全局解释器锁 (GIL) 阻止了同时多线程执行代码,成为了在多核 CPU 上提高 Python 代码运行效率的一大障碍。
相关链接:https://discuss.python.org/t/a-steering-council-notice-about-pep-703-making-the-global-interpreter-lock-optional-in-cpython/30474

往期推荐



马斯克 “零元购”,骚操作强夺 @x 推特账号
已被LLM“杀死”?Stack Overflow:打不过就加入
开源模拟器Dolphin放弃上架Steam



这里有最新开源资讯、软件更新、技术干货等内容

点这里 ↓↓↓ 记得 关注✔ 标星⭐ 哦


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