Lua、Luajit、Python、Node.js和Java性能测试对比

这个Github项目提供了Lua、Luajit、Python、Node.js和Java等动态语言的性能测试,具体语言版本包括:
Lua 5.3.3
Luajit 2.0.4
Python 3.5.1
Pypy 2.4.0
HipHop VM 3.13.2
NodeJS v6.2.1
OpenJDK 1.8.0_92 (reference)

主要测试下面算法的性能:
二叉树
fannkuchredux
fasta
nbody
spectralnorm

测试结论如下:
1. Lua是非常快的解释语言,甚至快于一些JIT,它最大的缺点是当出现大量的(re)alocating(分配或再分配)时会出现性能下降,可见其二叉树算法测试。

2.Luajit非常疯狂的动态jit,非常闪耀的快速语言,但是当运行更长时间以后,它会被Java超越,也就是说,当分配了很多空间情况下,它的性能才非常好。

3.Python是最慢的解释语言,最坏情况是进行Fibonacci 程序运行时(Python不能做CPU密集型的任务)

4.Pypy是处于HHVM, Lua和 Python以及Node,Luajit,Java之间的语言,当需要许多分配时它会有很多问题。

5.HHVM有时确实超过Pypy-s性能,但是不总是,如同原生Python实现,它在递归计算会有严重问题。

6.Node.js是非常快的JIT,只会被LuaJit和Java打败,快于Pypy好几倍,当实现冒泡排序时特别优秀。

7.Java:当执行很短程序时会输给Luajit,但是执行超过几秒的较长程序时,会超过Luajit,变成最快的。

gareins/dynamic_benchmarks: Collection of benchmar

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值