使命|编程语言也环保?C 语言领跑,Python、Perl 和 Ruby 表现不佳

使命|编程语言也环保?C 语言领跑,Python、Perl 和 Ruby 表现不佳

文章图片

使命|编程语言也环保?C 语言领跑,Python、Perl 和 Ruby 表现不佳

文章图片

使命|编程语言也环保?C 语言领跑,Python、Perl 和 Ruby 表现不佳

出品|开源中国
作者|Travis
毋庸置疑 , Python 是世界上最流行的编程语言之一 , 其被广泛运用于人工智能、数据分析、网络爬虫和 Web 开发等领域 。 在上个月的 TIOBE 榜单中 , Python 一举超过 C 语言拿下榜首的位置也能够充分说明 Python 的流行程度 。
但在 2017 年的一项研究 , 以及今年的补充研究中表明 , 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的一些测试 , Rosetta Code 是一个比较不同编程语言执行常见算法的网站 。 从下面的表格可以看出 , 当涉及到能源消耗时 , Python 在大多数测试中都处于排名后半部分 , Python 甚至不能在 24 小时截止时间内完成斐波那契任务 。

【使命|编程语言也环保?C 语言领跑,Python、Perl 和 Ruby 表现不佳】综合最新的测试结果能够看出 , Python 和 Perl 在多项测试中依旧排名垫底 , 虽然 Ruby 并没有倒数第一的测试成绩 , 但在多项测试中也均排名靠后 。 而 C、C++ 和 Rust 则刚好相反 , 它们是这些测试语言中相对最环保的语言 。