Re: Windows 10 UNIVERSAL
Posted: Wed Feb 17, 2016 8:40 pm
If you copy someone's forum post you should include a link to the original. That would be here: http://www.emutalk.net/threads/55275-Th ... post454316
I've seen this post before and I never got around to replying to it, but simply put I think it makes some questionable claims. Most traditional interpreters that are at all efficient have a single switch dispatch and therefore it amounts to the same single indirect branch per instruction that this scheme would be. Just instead of computing that function pointer from instruction bits and a fixed table you'd be loading it from a dynamic array. It saves on work decoding at the expense of doubling the memory footprint for instructions. In theory the real wins in threaded interpreters come from doing optimizations on the code to remove redundant computations and combine operations into super-operations. This might work well on Forth interpreters but for ARM it'd be a different story.
So I'm skeptical that the performance would end up good enough but I'm not going to be trying it either way.
It's moot anyway if it's not needed on Windows 10 Mobile/Universal/whatever.
I've seen this post before and I never got around to replying to it, but simply put I think it makes some questionable claims. Most traditional interpreters that are at all efficient have a single switch dispatch and therefore it amounts to the same single indirect branch per instruction that this scheme would be. Just instead of computing that function pointer from instruction bits and a fixed table you'd be loading it from a dynamic array. It saves on work decoding at the expense of doubling the memory footprint for instructions. In theory the real wins in threaded interpreters come from doing optimizations on the code to remove redundant computations and combine operations into super-operations. This might work well on Forth interpreters but for ARM it'd be a different story.
So I'm skeptical that the performance would end up good enough but I'm not going to be trying it either way.
It's moot anyway if it's not needed on Windows 10 Mobile/Universal/whatever.