工程師看過來!Google開源工具Grumpy可將Python轉換成Go語言
工程師看過來!Google開源工具Grumpy可將Python轉換成Go語言
2017.01.06 | Google

Python以直觀且強大的擴充功能,成為近日熱門的程式語言,但記憶體和執行效能問題卻一直是其最大痛點。同樣深受其擾的Google,在GitHub開源一項實驗專案Grumpy,可將Python程式碼轉換成Go程式碼、且不須再透過虛擬機器即可直接執行,大大提升效能。

提升效能

YouTube工程師Dylan Trotter在部落格發文表示,目前YouTube的前端伺服器以及YouTube API,主要都是用Python撰寫,並以目前使用最為廣泛的Python直譯器CPython的版本2.7運作。

不過他們發現,Python在執行「平行處理(comcurrent)」時效能不佳,因此他們開發出「Grumpy」,一套可將Python轉換為Go語言的轉譯器(transcompiler)和Python Runtime。Grumpy和其他轉譯器最大的不同在於,其可將Python原始碼直接轉換成Go語言機器碼,而非需要虛擬機器處理的位元組碼(bytecode),大大提升效能。

Grumpy vs CPython
Grumpy和CPython的執行效能比較。
圖/ Google OpenSource

強化並行工作、可導入Go套件

雖然Grumpy並不支援Python C擴充模組,但在設計API和並行工作負荷的表現上更彈性。此外,Grumpy解決「全域直譯器鎖(global interpreter lock,GIL)」的問題,讓Go可發揮本身「記憶體自動回收機制(garbage collection)」的優勢,也可導入Go套件,讓兩種程式間的互通性變得更強大和直覺。

不過,Dylan Trotter在Hacker News上表示,Grumpy目前尚未真正用於Google產品,且Grumpy仍於實驗階段,仍有許多漏洞待修補。

資料來源:GoogleZDNetHackerNews

登入數位時代會員

開啟專屬自己的主題內容,

每日推播重點文章

閱讀會員專屬文章

請先登入數位時代會員

看更多獨享內容

請先登入數位時代會員

開啟收藏文章功能,

請先登入數位時代會員

開啟訂閱文章分類功能,

請先登入數位時代會員

我還不是會員, 註冊去!
追蹤我們
一次搞懂Vibe Coding
© 2025 Business Next Media Corp. All Rights Reserved. 本網站內容未經允許,不得轉載。
106 台北市大安區光復南路102號9樓