亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何分析Python 3.9 性能優化中的vectorcall

發布時間:2021-12-09 09:23:37 來源:億速云 閱讀:219 作者:柒染 欄目:大數據

如何分析Python 3.9 性能優化中的vectorcall,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。

Python 的 3.9.0 版本正在開發中,計劃在 2020-10-05 發布final版本。

官方在 changelog 中披露了很多細節,其中有一項“vectorcall”特性是最容易被接受的。

事實上,早在 Python 3.8 版本中就已部分地實現了 vectorcall,只不過它是暫時性的,被隱藏起來了,按計劃是在 3.9 版本中實現完全體。下圖是 3.8 版本中的簡介:

如何分析Python 3.9 性能優化中的vectorcall  

那么,什么是 vectorcall 呢?它會帶來哪些變化呢?

“a fast calling protocol for CPython”,即它是 CPython 的一種快速調用協議,可以加速 CPython 解釋器在調用類對象時的速度。

(PS:需要注意的是,這里說的“協議”是一種廣義的稱呼,它跟我們熟知的網絡協議或通信協議不同,可理解為對代碼作調用時的一種約定、一種實現方式)

這種協議是在 PEP-590 中被提出的(時間是 2019-03-29),對應的 bpo 是 issue37207,歷時近一年的開發,目前它的實現已合入了代碼倉。

如何分析Python 3.9 性能優化中的vectorcall

用一句話概括它的核心要點是:它將提升 list()、tuple()、dict() 等主要類型的調用速度,同時它還可以被用在自定義的類上。

結合 PEP 與 bpo 信息,我提煉了以下的詳細要點:
  • vectorcall 是對 fastcall 的正式化。在之前的 CPython 中存在一些零散的優化點(即 fastcall),如今官方把它們系統化了,給出了一個正式的“vectorcall”稱呼。

  • vectorcall 適用于多數內置類型。據當前的披露信息,它適用于 list、tuple、dict、set、frozenset 與 range 這 6 種主要的內置類型(部分測量數據顯示,速度提升率達 10%~30%)。

  • vectorcall 是對性能與靈活性的調和。之前的解釋器具有很高的靈活性,但是在對象調用過程中,存在不必要的中間對象以及間接的調用開銷,如今是設法消除了這部分開銷,得以提升了性能。

看完上述內容,你們掌握如何分析Python 3.9 性能優化中的vectorcall的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

侯马市| 墨江| 庆阳市| 新安县| 城固县| 循化| 和平区| 东海县| 鹰潭市| 永州市| 宜丰县| 邻水| 沛县| 阜南县| 马公市| 龙岩市| 东光县| 牟定县| 辽宁省| 新乐市| 商南县| 龙里县| 略阳县| 宜兰市| 沧州市| 西盟| 东乌| 和田市| 金塔县| 咸宁市| 获嘉县| 二连浩特市| 黄冈市| 宁国市| 府谷县| 崇阳县| 阿巴嘎旗| 天台县| 永济市| 剑河县| 上杭县|