LUA (game rules) is interpreted at runtime, but the engine core is compiled C/C++ that is run directly on the CPU. LUA bottlenecks the CPU side of the game significantly, but work is being done on that by the developers.
Pretty sure its script interpreted. Thats why alot of performance issues are said to be helped by more efficient lua scripting (which is happening now, and alot more later). Modern compilers would normally handled minor inefficiencies.
Yeah, its interpreted. Used to be JIT (just in time) compiled on the fly, but there were some major memory management problems with that IIRC so its all interpreted now, which has its own issues as you've seen.
You can actually see the impact made by the super-slow interpreted game rules code between spectator and a player. Spectator runs a lot less game code, and you'll find that your FPS goes way up and you have a lot fewer hitches/slowdowns.
Max is said to be working on optimizing/rewriting the LUA JIT compiler to fix the memory management problems, so we can all get back to compiled code and get a 100X performance increase.
Yes, there will be some performance boost from Max's new Lua engine although I wouldn't expect it to be a silver bullet, the problem isn't necessarily the Lua code itself but rather Luas slow lua > c++ interface. If you are interested Max opensourced the new Lua engine and posted it on github here: <a href="https://github.com/maxmcguire/rocket" target="_blank">https://github.com/maxmcguire/rocket</a> - it likely wont mean much unless you know Lua/C++ but might be fun to poke around.
Now that we are pretty much feature complete we have guys focusing lots on performance, this week all the profiling tools have been reworked to help track down problem code and help find out where in the code stuff is running slow and why so the guys can either work on optimising the Lua itself or where needed moving that section of code into c++. Hopefully in the next few patchs it should be possible to start seeing the fruits of some of this work however dont expect any one fix to bring a massive performance increase, it will more likely be a long process doing lots and lots of small fixes and changes that will hopefully over time give performance increases all round.
Comments
LUA bottlenecks the CPU side of the game significantly, but work is being done on that by the developers.
You can actually see the impact made by the super-slow interpreted game rules code between spectator and a player. Spectator runs a lot less game code, and you'll find that your FPS goes way up and you have a lot fewer hitches/slowdowns.
Max is said to be working on optimizing/rewriting the LUA JIT compiler to fix the memory management problems, so we can all get back to compiled code and get a 100X performance increase.
Now that we are pretty much feature complete we have guys focusing lots on performance, this week all the profiling tools have been reworked to help track down problem code and help find out where in the code stuff is running slow and why so the guys can either work on optimising the Lua itself or where needed moving that section of code into c++.
Hopefully in the next few patchs it should be possible to start seeing the fruits of some of this work however dont expect any one fix to bring a massive performance increase, it will more likely be a long process doing lots and lots of small fixes and changes that will hopefully over time give performance increases all round.
lol^
<!--quoteo(post=1949747:date=Jul 7 2012, 06:33 PM:name=MrYiff)--><div class='quotetop'>QUOTE (MrYiff @ Jul 7 2012, 06:33 PM) <a href="index.php?act=findpost&pid=1949747"><{POST_SNAPBACK}></a></div><div class='quotemain'><!--quotec-->Now that <b>we </b>are pretty much feature complete <b>we </b>have guys focusing lots on performance<!--QuoteEnd--></div><!--QuoteEEnd-->