當前位置:成語大全網 - 新華字典 - Python速度編譯神器學生來看

Python速度編譯神器學生來看

Python速度編譯神器快來體驗吧

Python速度編譯神器

Python的運行速度快嗎?雖說不同場景不同定論, 但整體而言

, 它沒有C、Java快。這也導致Python憑借可讀性、簡單易

上手、良好的生態系統橫行AI領域時,壹提到速度,就成為眾

多開發者頭疼的問題。

為了解決這壹難題,麻省理工學院的計算機科學家出手了,他

們***同研發了壹種名為Codon的Python編譯器, 可以將

Python代碼轉化為本地機器代碼, 而不會對運行時的性能產生

影響。

當前, Codon已經在Git Hub上開源:/exaloop/codon, 斬獲6300個Star。

1、Codon與C/C++性能相當

"在單線程上, 比Python的典型速度提高了10-100倍或更多,

"Codon repo寫道, "Codon的性能通常與C/C++的性能相當

(有時甚至更好)。"

codon

與Python不同的是, Codon支持本地多線程, 這可以使速度

提高許多倍。

Codon最初是作為壹個在Python中創建高性能特定領域語言

(DSL, domain-specific language) 的框架而開發的。DSL

是專註於特定目的的語言, 而不是像Python或C這樣的通用

編程語言。

據官方Git Hub repo透露, Codon源於Seq項目, 後者是壹個

用於生物信息學和遺傳學的DSL, 現如今它已經成長為壹個與

Python 3基本兼容的語言編譯器。

近期, 外媒The Register通過該工具的研究團隊內部最新分享

了壹個關於Codon的論文。

這篇論文指出, "與其他面向性能的Python實現(如PyPy或

Numba) 不同, Codon是作為壹個獨立的系統從頭開始構建的

, 它可以提前編譯為靜態可執行文件, 並且不與現有的Python

運行時(如CPython或RPython) 綁定執行。因此, Codon

可以實現更好的性能,並克服運行時的特定問題,如全局解釋

器鎖"。

2、測試

那麽Codon是否真的如說的那樣快?在Codon論壇上, 壹位

開發者進行了測試:

CPython 3.11

PyPy 7.3.9

Codon compiled

Codon with python interpreter

最終發現, 壹個簡單的Codon編譯的斐波那契腳本比CPython

版本快70多倍。

據Codon官方文檔顯示, 雖然Codon的語法和語義與Python

的幾乎相同,但還是有壹些值得壹提的區別,如數據類型方面

整數。Codon的int是壹個64位有符號的整數, 而Python

的(在版本3之後) 可以是任意大的。然而Codon通過Int[N]

支持更大的整數,其中N是位寬。

字符串。Codon目前使用ASCII字符串, 與Python的

unicode字符串不同。

字典。Codon的字典類型不保留插入順序, 與Python 3.6的

不同。

此外, Codon和Python在類型檢查、數值運算、模塊等維度

還有些許的不同, 更詳細的內容可參考:https:

//docs.exaloop.io/codon/general/differences據悉, Codon

已經被商業化地應用在金融和生物信息學、深度學習等領域。