VM/Interpreter - stack or register based?

Found this article on optimization.

Which states, in the first sentence:

1000 : 10 : 1. These are the slowdown-ratios of an inefficient interpreter, when
compared to an efficient interpreter, and finally to an optimizing native code compiler.

So good luck getting down to 2x!