首頁 > 軟體

創始人van Rossum想讓Python的速度提升一倍

2021-05-17 23:00:37

30年前創建了流行的程式語言Python的Guido van Rossum概述了他的雄心壯志,要讓它的速度提高一倍--解決Python與C++等更快的語言相比的一個關鍵弱點。核心Python(CPython)的效能不足部分地解釋了為什麼Python傾向於資料科學和機器學習,其中許多工作負載被移交給GPU。

它在這些領域崛起的另一個原因是豐富的特定領域庫,從NumPy到谷歌支援的TensorFlow機器學習框架。

在本週的美國PyCon語言峰會上,van Rossum在微軟擁有的GitHub上釋出了一份檔案,詳細介紹了他使Python成為一種更快的語言的一些雄心,承諾在Python 3.11中使其速度翻倍--這是明年將出現的三個Python分支中的一個。

這位Python的創造者於11月被開源友好的微軟聘用,使他在Dropbox工作後從退休狀態中解脫出來,他幫助Dropbox處理了400萬行Python程式碼。他說他 "退休後坐在家裡很無聊",他申請了微軟的職位。他現在在微軟擔任傑出工程師的特權職位。

他在微軟 "獲得了挑選項目的自由",並補充說他 "選擇回到我的根源,這也是微軟回饋Python的方式,"van Rossum寫道。

微軟以各種方式支援Python,包括免費的Python課程,作為其Azure雲人工智慧服務的入門課程,通過其VS Code Python擴展支援,以及Windows 10上的Python。自2006年以來,它還一直是Python軟體基金會(PSF)的贊助商,並在今年為其提供了15萬美元的贊助。

據van Rossum說,微軟已經資助了一個小型Python團隊,以 "負責解釋語言的效能改進"。

微軟目前有五個核心開發人員為CPython的開發做出貢獻,包括Brett Cannon、Steve Dower、Guido van Rossum、Eric Snow和Barry Warsaw--他們都是Python核心開發人員社群的老手。

正如微軟在4月份指出的那樣,Snow一直在研究通過子直譯器實現Python的多執行緒效能。Dower擔任構建經理,從3.5版Python開始,他就是Windows版CPython的專家。Warsaw為Python指導委員會、Python安全響應小組和Python釋出經理名單做出了貢獻。

隨著最近的軟體供應鏈攻擊成為焦點,微軟也在關注主要軟體包庫PyPI(Python Package Index)的安全問題。

"作為我們對PSF的15萬美元財務贊助的一部分,我們將把資金集中到打包工作組,以幫助進一步改善PyPI和打包生態系統的開發成本,"微軟Python和AI工具的主要經理Dan Taylor說。 "隨著最近披露的安全漏洞,可信的供應鏈對我們和Python社群來說是一個關鍵問題,我們很高興能幫助為長期改進作出貢獻。"

同時,van Rossum指出,他和他的微軟同行與核心Python開發人員的貢獻是公開的,並專注於CPython的增量變化。對於Python開發人員來說,破壞性的變化是一個敏感的問題,他們在將程式碼從Python 2.x轉移到Python 3時面臨著一個巨大的工作量,這預計需要超過十年的時間來完成。

他還談到了Python的直譯器及其C語言的應用二進位制介面(ABI)和應用協議介面(API),據一些Python老手說,這阻礙了Python在瀏覽器中的創新。

"不要破壞穩定的ABI相容性;不要破壞有限的API相容性;不要破壞或減慢極端情況,"van Rossum承諾。"保持程式碼的可維護性,"他補充說。但是,核心Python項目是否真的能夠提供兩倍於當前Python版本的速度?來自van Rossum的證據表明,他不希望為這樣一個雄心勃勃的項目負責。"我們遠遠不能確定我們會達到2倍!"他寫道。"但是很樂觀,很好奇"。

儘管如此,他還是指出 "我們必須要有創造力"。

他說,即將到來的Python變化的主要受益者將是那些運行 "CPU密集型純Python程式碼"的程式設計師和基於Python運行的網站使用者。然而,對於已經用C語言編寫的程式碼,如NumPy和TensorFlow、I/O繫結的程式碼、多執行緒程式碼和演算法效率低下的程式碼則不會有太大的好處。


IT145.com E-mail:sddin#qq.com