Arisu, the author behind the amazing TESV Acceleration Layer tool, posted in Bethesda’s forum some interesting notes about his tool and how it works. It’s really complicated, so we won’t go into full details but what caught our eye was the author’s claim that Skyrim would probably experience a speed gain of over 100% if it was properly optimized. According to Arisu, this is no exaggeration as the compiled code is simply bad. Don’t believe it? Then let us tell you that the TESV Acceleration Layer doesn’t modify even nearly 1% of the code, but still manages to cut the cycles per frame by 30-40%. Imagine what would happen with proper optimization.
As Arisu posted:
“Skyrim would probably experience an execution speed gain of over 100% just by using an optimizing compiler, as it has drastic consequences to the amount of code that could be detected as being redundant and thus completely eliminated.”
Arisu added that “only 3 functions have truly been rewritten, and that every time a certain kind of pointer needs to be dereferenced, the game will call a lengthy function to do what can be (and is) replaced by a single instruction”. Now this could be fixed manually but it would take a lot of effort from those interested in fixing and correcting Bethesda’s mess. A compiler, however, can do this for the whole binary at the cost of just a few seconds extra compiling time. Not only that but the results will be much better. After all, that’s why those compilers are created for.
Arisu concludes that “the TESV code has pretty high register pressure and a huge part of this is simply due to the completely missing optimizations, which would otherwise eliminate the unneeded allocations“. And as we all know, a 64bit executable file would definitely help improving this condition. Oh, and yeah. The scaling of this updated Gamebryo engine is still awful, as it doesn’t take advantage of more than two CPU cores. In other words, you’ll either need higher Ghz or to wait for the next-generation of CPUs to avoid any CPU limitation.
Skyrim is a great game but Bethesda has really messed up with its engine. Keep in mind that the company had been constantly stating that Skyrim’s engine would be a completely new engine and that it would come with multi-threading support. Ironically – and disappointing at the same time – this is not the case as it’s simply an upgraded GameBryo engine.