So through a digital update, they were able to more than double it's power?! Holy crap
Well, they didn't do anything to the physical power of the CPU. What happens is that programs have to go through several translation layers before they get to the hardware. As an example, you and I are talking, but you're speaking English, and I'm speaking French. To facilitate this, we try to get a translator. I found one that speaks French and Italian, while you've found one that speaks English and Spanish. So now we go find one that speaks Italian and Spanish, so we've using 3 translators as middle men, and hope to God that they don't lose anything in translation, or that will really slow us down.
With 2.2, using the JIT compiler, Google simply sped up the communication between layers. In this case, we're both speaking English/French respectively, but this time, we got one translator who speaks both languages, so the process is faster, but still not natural.
Hopefully 3.0 puts us on the same language, so we don't need translators (and that's an issue more with the development kit now than the OS, as the developers of Core Player can attest). So expect more speed gains with 3.0, just not as dramatic as 2.1 --> 2.2.