unityloverz 发表于 2021-8-12 19:37

最新 XLua 与 ILRuntime 性能对比

现在很多项目都使用xlua来开发整个项目,但是u3d是个C#语言为编程语言的引擎,一般lua项目中,我们会把逻辑运算量大,复杂度高,对性能有要求的代码写在C#代码,或者C++ DLL库中,比如加载,更新,框架,战斗等。
在Ilruntime 1.3版本之后,有稳定的调试插件(通过tcp 连接,因此可以真机调试),值绑定等功能后 也成为一个不错选择,程序员不需要更换语言来编写项目。至于它的局限性,对比lua来说都是半斤八两,比如主工程的泛型类无法导出,常用值类型需要生成wrap等(否则会有严重性能问题)。
目前很多人对Ilruntime 的看法有2点。 1,使用的项目比较少,未预见的坑比较多。 2,性能比较差,毕竟lua 有Jit, 在支持Jit的设备上是接近c的性能,大部分的性能损耗在接口交互上,而Ilruntime 是自己实现了一套解释器,是C#编写的,原生性能较差。 因此我打算做一个性能测试,看看真实的情况是什么。
使用的ILruntime库地址
https://github.com/Ourpalm/ILRuntime
使用的Xlua库地址
https://github.com/Tencent/xLua
注:环境说明
ILRuntime 1.6.0版本, Release模式,且生成了Binding文件Xlua 2.1.14 生成了 WrapCodeUnity2018.4.10 编辑器环境下
总共对12段代码进行了测试。参考:
页: [1]
查看完整版本: 最新 XLua 与 ILRuntime 性能对比