Lua挑战:您能提高谱范数实现的性能吗?

Lua目前是最快的脚本语言,对于某些程序而言(在执行pidgits 1:1时),它甚至不比C / C ++慢多少。然而,Lua在一些基准测试中表现非常糟糕,特别是在与C / C ++的比较中。

其中一个基准测试是光谱范数测试(使用幂法N = 5,500进行特征值计算),在该测试中,它得分为可怕的1:148。

那么这该如何进行优化(当然,与任何优化一样,您必须测量您的实现以确保它更快)?您不允许更改Lua的C内核或使用LuaJit,它是为了找到优化Lua的弱点的方法。

原文链接 https://stackoverflow.com/questions/570311

点赞
stackoverflow用户63471
stackoverflow用户63471

当你引用从基准测试游戏中的数字,请说明这些数字的来源,以便读者有一些背景信息。

在这种情况下,你似乎已经获取了在四核机器上测量的数字,并在最快的程序已经被重新编写以利用多核的情况下获得了。与其查看经过的时间(按 CPU 时间排序,你会看到比例降至1:24)。

或者查看中位数和四分位数以更好地了解C ++测量集与Lua测量集之间的比较。

或者有一组强制程序只使用一个核的测量 - 与C ++相比的Lua - 如果你看看那些Lua pi-digits程序,你会发现它们使用了C语言GNU GMP库。

2009-02-20 22:29:44