专栏名称: Python编程
人生苦短,我用 Python !关注 Python 编程技术和运用。分享 Python 相关技术文章、开发工具资源、热门信息等。
目录
相关文章推荐
警民直通车浦东  ·  严管厚爱催生文明蝶变——浦东交警以“最美示范 ... ·  11 小时前  
广东信息通信业  ·  广东省通信管理局召开2025年“南粤满格”一 ... ·  16 小时前  
广东信息通信业  ·  广东省通信管理局召开2025年“南粤满格”一 ... ·  16 小时前  
魔法K线一王焕昌  ·  【机器人扑街,深海发酵】 ·  19 小时前  
魔法K线一王焕昌  ·  【机器人扑街,深海发酵】 ·  19 小时前  
51好读  ›  专栏  ›  Python编程

Python太烂了!比C语言慢71倍!消耗的能量是C语言的75倍!

Python编程  · 公众号  · 科技自媒体  · 2024-10-24 11:59

正文

来自:码农翻身(微信号:coderising)

最近看到一个有趣的编程语言研究,它把27种编程语言放到一起做了一个基准测试。


一般的基准测试无非是看看哪个编程语言最快,而这个研究还要看看 谁消耗的能量最高


其中的一个结果让人震惊, Python竟然比C慢71倍,消耗的能量居然是C的75倍!


这个研究是葡萄牙的一个研究所做的,他们用了一个叫做“The Computer Language Benchmarks Game”测试集。


这个测试集很有趣,既包括程序员熟悉的“ 二叉树遍历 ”,也包括“ N体问题 ”这样的天体运动模拟,目的是尽可能多地覆盖到更多领域。



对于程序的运行时间很好计算,记录下开始时间和结束时间,相减就出来了。


对于程序的能耗,他们使用了Intel的 RAPL(Running Average Power Limit) ,这是一种硬件功能,可以监控CPU、内存、GPU能耗,然后通过API来访问。


整体的程序框架大概是这样:


for (i = 0 ; i < N ; i++){  time_before = getTime (...);  rapl_before (...);  // 使用system系统调用来执行程序  // 例如system("/usr/bin/python binarytrees.py")  system(command);  rapl_after (...);  time_elapsed = getTime (...) - time_before ;  ...}

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


在速度上,不出意料,C语言最快,以它为基准,Python是71.90,Lua最慢。



在能量消耗上,C语言最低,以它为基准,Python是75.88,Perl最差。



在内存占用上,Pascal这门语言竟然排到了第一,C语言屈居第三。



从运行速度,能量消耗、内存使用这三项指标上都能看出 C语言的王者之气


运行速度最快的编程语言:C、Rust、C++、Ada、Java,在节能榜也名列前茅。


可以看出编译型的语言性能确实厉害, Java的虚拟机被优化得也非常强悍



而解释型语言PHP、Lua、Ruby、Python、Perl等就排名靠后了。


让人吃惊的是Lisp,执行速度靠前,消耗能量之少也名列前茅。







请到「今天看啥」查看全文