您的位置:首页 > 编程语言 > Lua

几种脚本语言的性能简单测试

2009-09-02 20:00 274 查看
今天简单测试了几种脚本语言循环的效率,分别是

native c

tcc(tiny c compiler)

lua

AngelScript

都是在vc环境下做的测试

 

 

//c代码如下

//c & tcc & as code: 这些都是c风格的,我个人比较习惯

double process(double ret)
{
 double i=0.0;
 for(i=0.0;i<1000000000.0;i+=1.0)
  ret +=2.0;
 return ret;
}

 

//lua code:说实话,我不大喜欢这种风格:)

local i=0.0;
local function process (ret)
 while(i < 1000000000.0) do
  i = i+1.0
  ret = ret + 2.0
 end
 return ret

end

 

 

分别用四种语言测试了一下,所花时间(ms)是:

c        1625
tcc     5468

lua 103368
as  268906

 

以c为标准,看来lua其实也很慢,大概只有c的1/60速度,angelscript就更慢了,只有1/150......,tcc也没有预想中的快,大概是c的1/4(没想到会这么慢的,这可是编译成386机器代码的啊)

 

现在很多的项目都采用lua做脚本,写一些界面,AI什么的,简单的测试下发现效率堪忧。不知道luajit能不能带来性能上的飞跃,以后有空得测试一下。

tcc虽然也没有预想中的快,(原来我认为会和c差不多,最多差个百分之几十),但至少是和c在一个数量级上,在效率上还是可以接受的。我们现在的项目的服务器脚本就在用它. 

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息