程式語言也環保?C 語言領跑,Python、Perl 和 Ruby 表現不佳

2021-11-30 09:00:27

毋庸置疑,Python 是世界上最流行的程式語言之一,其被廣泛運用於人工智慧、資料分析、網路爬蟲和 Web 開發等領域。在上個月的 ,以及今年的中表明,Python 和 Perl 在一眾參考物件中是不夠環保和節能的編碼語言。

我們先來說說 2017 年的研究。葡萄牙 Universidade do Minho 大學的研究人員在當時的研究中發現,就執行某些特定任務時消耗的能量而言,在所有參與測試的 27 種程式語言中 Python 和 Perl 的能耗最高,排名墊底,Python 僅比 Perl 稍好一些;而 C 語言能耗最低位居榜首,其次是 Rust、C++ 和 Ada。反應到具體數位上,C 語言的能耗為 1(以排名第一的 C 語言為基準,因此數位為 1),而 Python 和 Perl 都超過了 75。

比較不同程式語言的能源消耗、時間和記憶體使用情況(2017):

而且此次研究推翻了大多數人慣有的想法,即人們可能會想當然地認為,一個執行速度更快的計算機程式會消耗更少的能源。但研究表明除了速度之外,還有其他因素會給能耗的最終結果產生影響。

自 2017 年以來這些程式語言都發生了大量變化,因此這個結果可能也不能反映現狀。為了迎合這些程式語言的更新迭代,研究人員在今年對這項研究做出了補充,他們更新了測試和結果。在更新的測試中,研究人員建立了 DRAM 能耗、峰值記憶體和執行期間使用的總記憶體之間的相互關係。

研究團隊還進行了一組標準演演算法以及來自 的一些測試,Rosetta Code 是一個比較不同程式語言執行常見演演算法的網站。從下面的表格可以看出,當涉及到能源消耗時,Python 在大多數測試中都處於排名後半部分,Python 甚至不能在 24 小時截止時間內完成斐波那契任務。

綜合最新的測試結果能夠看出,Python 和 Perl 在多項測試中依舊排名墊底,雖然 Ruby 並沒有倒數第一的測試成績,但在多項測試中也均排名靠後。而 C、C++ 和 Rust 則剛好相反,它們是這些測試語言中相對最環保的語言。

展開閱讀全文