成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Python 3.12 目標:還可以更快!

開發 后端
本文是 Faster CPython 計劃在 3.12 中實現的主要內容的概要。

 

按照發布計劃,Python 3.11.0 將于 2022 年 10 月 24 日發布。

據測試,3.11 相比于 3.10,將會有 10-60% 的性能提升,這個成果主要歸功于“Faster CPython”項目,即“香農計劃”。

3.11 版本為 Python 的提速開了一個激動人心的好頭。接下來,3.12 還會有更多動作。

以下文章翻譯自“香農計劃”的《Python 3.12 Goals》,大家先一睹為快吧!

  •  作者:Mark Shannon
  •  譯者:豌豆花下貓@Python貓
  •  英文:https://github.com/faster-cpython/ideas/wiki/Python-3.12-Goals

本文內容可能會改動,以實際版本為準!

本文是 Faster CPython 計劃在 3.12 中實現的主要內容的概要。

跟蹤優化器

Python 3.11 提升速度的主要方法是用更快的與上下文相關的操作碼(自適應的專門化操作碼)替換個別的操作碼,下一個大的改進方法是優化多個操作碼的運行。

為此,現有的許多高級操作碼將被替換成低級操作碼,例如,用于檢查版本號和引用計數的操作碼。這些更簡單的操作碼更容易進行優化,例如,可以刪除冗余的引用計數操作。

這些更底層的操作碼還能讓我們得到一組適合用于生成機器代碼的指令(在 CPython 和第三方 JIT 項目中都適用)。

為了做到這點,解釋器循環(interpreter loop)將基于聲明性的描述而生成。

這可減少一部分為了保持解釋器循環與某些相關函數同步而產生的 bug(mark_stacks、stack_effect 等函數),同時也讓我們可以對解釋器循環作較大的更改試驗。

多線程并行

Python 當前每個進程有一個全局解釋器鎖(GIL),阻礙了多線程的并行。

  • PEP-684:https://peps.python.org/pep-0684
  • PEP-554:https://peps.python.org/pep-0554

PEP-684 提出了一個方案,即保證所有的全局狀態都是線程安全的,并移動到每個子解釋器的全局解釋器鎖中使用。


PEP-554 提出了讓 Python 創建子解釋器的方案(目前只是一個 C API 特性),從而實現真正的多線程并行。

  •  Python貓注:PEP-554 早在 2017 年就提出了,目標是落地在 Python 3.8-3.9 版本,然而事與愿違。早在 2019 年的時候,我還翻譯了一篇《Has the Python GIL been slain?》。屠刀已揮出,讓它再飛一會~~

更多專門化

我們分析了哪些字節碼將從專門化中獲益最多,計劃在 3.12 完成其余的高收益的改進。

??    https://github.com/faster-cpython/ideas/issues/74 ??

較小的對象結構

有許多可以減少 Python 對象結構大小的機會。由于它們被頻繁使用,這不僅有利于總體的內存使用,還有利于緩存的一致性。我們計劃在 3.12 中實現最有希望的一些想法。

這里有一些向后兼容性與性能之間的權衡問題,可能需要提出一個 PEP 來建立共識。

減少內存管理的開銷

我們不僅會減小對象的大小,還會使它們的 layout 更加規則。

這不僅能優化內存的分配及釋放,還能在 GC 和重新分配期間加快遍歷對象的速度。

API 穩定性

除了前述項目外,開發團隊還將提升 CPython 代碼庫的整體質量:

  • 通過減少不同編譯階段的耦合,使編譯器更易于維護與測試。
  • 積極地在 C 語言級別監控和改進 CPython 測試套的代碼覆蓋率。
  • 改進 Python 性能基準測試套,加入更具代表性的現實世界的負載測試。
  • 協助處理 CPython 問題和 PR,特別是與性能有關的問題。
  • 增加用于標準基準測試的機器,增加 macOS 和 Windows 的測試結果。
  • 繼續跟主要的深度使用 Python 內核的項目合作,幫助它們適配 CPython 解釋器的更改。
責任編輯:龐桂玉 來源: Python技術
相關推薦

2022-04-21 14:50:50

Python農歷命令

2009-12-30 10:46:01

Ubuntu目標

2021-03-03 08:05:53

C++項目函數

2021-07-23 16:30:36

PythonC++代碼

2022-07-30 23:45:09

內存泄漏檢測工具工具

2020-11-04 07:36:06

Redis二進制數據庫

2021-02-01 13:35:28

微信Python技巧

2022-07-29 16:50:30

網絡帶寬

2022-12-06 17:30:04

2023-12-21 07:13:08

Python工具移除

2021-03-01 21:32:49

HTTP2 QUIC

2024-06-19 10:01:50

2022-05-17 07:26:33

動畫CSS前端

2018-08-08 14:25:17

2023-07-03 16:49:47

5G

2022-04-11 19:55:26

函數類型函數重載

2021-03-03 06:39:05

Nodejs前端開發

2013-09-18 10:44:01

搜狗輸入法詞語

2011-10-14 10:18:16

信息泄漏

2012-10-12 10:13:26

eclips代碼編寫Editplus
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 久草精品视频 | 精品国产乱码一区二区三 | 日本免费网 | 国产一级片网站 | 国产精品一区一区三区 | 日韩欧美不卡 | 亚洲风情在线观看 | www日本在线播放 | 午夜爽爽男女免费观看hd | 日韩高清www | 中文字幕日韩欧美一区二区三区 | 玖玖玖在线观看 | avmans最新导航地址 | 岛国在线免费观看 | 天天色综网 | 成人久久久久 | 电影91久久久 | 欧美日韩亚洲系列 | 久久精品一级 | 欧美激情视频一区二区三区在线播放 | 国产成人精品一区二区三区视频 | 天天草天天操 | 免费在线一区二区 | 亚洲啊v在线| 久久成人18免费网站 | 国产在线视频一区二区 | 538在线精品| 欧美视频精品 | 欧美一区二区三区 | av中文字幕在线 | www.亚洲精品 | 久久久91精品国产一区二区三区 | 一区二区在线 | 在线不卡一区 | 国产精品视频观看 | 国产日韩久久久久69影院 | 国产精品久久久久久 | 伊人久久国产 | 欧美一级黄 | 免费在线黄| 国产欧美精品区一区二区三区 |