编程语言基准测试新发现:Python 与 C 的惊人差距

2024-11-05 15:39:00
在当今数字化代,孩子接触网络的机会日益增多,染上网瘾的现象也时有发生。然而,不少家长对于孩子染上网瘾的具体表现并不十分清楚,也不知道如何正确应对。

通常而言,我们所熟知的编程语言基准测试,往往侧重于比较各语言的运行速度,看哪种语言能够在执行任务时更为迅速地得出结果。然而,此次该研究所进行的测试却别具一格,除了关注运行速度之外,还着重考察了各编程语言在运行过程中消耗能量的情况。

测试过程中所呈现出的部分结果着实令人大为震惊。其中,Python 与 C 语言之间的对比差距尤为显著。在运行速度方面,Python 竟然比 C 语言慢了足足 71 倍。这意味着在处理相同的任务时,C 语言能够以远超 Python 的效率快速完成。而更让人意想不到的是,在能量消耗上,Python 消耗的能量居然是 C 语言的 75 倍。如此巨大的差距,无疑让我们对这两种广泛应用的编程语言在性能表现上有了更为深刻的认识。

该研究所此次测试所采用的测试集名为 “The Computer Language Benchmarks Game”,这个测试集设计得十分巧妙且有趣。它涵盖了诸多不同类型的任务,既包含了程序员们极为熟悉的 “二叉树遍历” 这类在数据结构处理领域常见的任务,又涉及到了 “N 体问题” 这样对天体运动进行模拟的任务。通过如此丰富多样的任务设置,其目的在于尽可能全面地覆盖到更多不同的应用领域,从而能够更为准确且客观地对各编程语言在不同场景下的性能表现进行评估。

最终的结果是这样的(经过了标准化的处理):

在速度上,不出意料,C语言最快,以它为基准,Python是71.90,Lua最慢。
在能量消耗上,C语言最低,以它为基准,Python是75.88,Perl最差。
在内存占用上,Pascal这门语言竟然排到了第一,C语言屈居第三。
从运行速度,能量消耗、内存使用这三项指标上都能看出C语言的王者之气。

运行速度最快的编程语言:C、Rust、C++、Ada、Java,在节能榜也名列前茅。
从运行速度,能量消耗、内存使用这三项指标上都能看出C语言的王者之气。

运行速度最快的编程语言:C、Rust、C++、Ada、Java,在节能榜也名列前茅。
然而,一个颇为引人深思的问题随之而来:既然 Python 在与 C 语言的此次基准测试对比中,在速度和能耗方面表现出如此明显的劣势,那为什么 Python 却是现在最受欢迎的编程语言呢?
这个研究只关注编程语言在运行时的表现,它不考虑软件的编写成本、维护成本。C语言和硬件密切相关,是个“低级”的高级语言,想写出好代码不容易。想用它写出和Java、Python同样功能的程序,花费的时间要长得多,这么算下来,用C语言消耗的能量可能远远超过Java和Python。

而Python在易上手性、库和框架丰富度、跨平台性、开发效率、社区支持、脚本语言特性以及与其他语言集成等诸多方面的优势,使得它成为了如今最受欢迎的编程语言之一。

这里面其实有一个守恒定律。C,Rust, C++都把能量消耗在脑力上了!Python消耗脑力最少。 “人生苦短,我用Python” 这句话的真谛在此刻透露的淋漓尽致。

对于系统级的软件和对性能要求高的软件,C、C++、Rust是不二之选,对于应用层的软件,需要快速实现多变的业务逻辑,还是选择Python、Java、JavaScript、Ruby等编程语言吧,适合的才是最好的!
原论文链接:https://haslab.github.io/SAFER/scp21.pdf

上一篇:互联网大厂职级和薪资一览表!(2024版)
下一篇:运营必懂的专业术语全解析

姓名:
手机:
北大青鸟深圳校区
返回顶部
咨询热线 0755-86191118