View Single Post
danramos's Avatar
Posts: 4,672 | Thanked: 5,455 times | Joined on Jul 2008 @ Springfield, MA, USA
#1152
Originally Posted by Serge View Post
Something like the approach used in transmeta crusoe cores?

Anyway, it would be quite interesting to investigate (if it's not done already) what is the main performance bottleneck in arm->x86 emulators and if any reasonably simple extension to the arm instruction set can result in more efficient x86 emulation
Caruso is a neat hack of an idea but, if I'm not mistaken, isn't it already being used in other modern processors? I thought the failure of selling Crusoe processors eventually led to the company mainly selling its patents to others who wanted to implement their techniques? I know they VERY recently sold some licenses to Sony (cell processors), NVIDIA, NEC for some of those technologies and that they have made some kind of 10-year patent deal to allow Intel to use their technologies, too. I wouldn't doubt that ARM might have eventually gone back over and made a license deal with them, too. I don't know that, though--I just imagine that the bumps up in ARM speeds in recent years might be one heck of a coincidence, maybe?

Remember that, under the classic model of how processors are designed, adding instructions to a processor means adding more silicon and metal to the processor which means an additional pathway for heat dissipation and/or power inefficiency. I'd rather that ARM/OMAP only bother adding instructions that don't really hurt performance and power.. and put more emphasis on tweaking up the processing speed (either electrically or by adding some smarter instructions--not necessarily for emulation's benefit).

I figure, in the end, you'll get emulation even if it's by software means without some special x86 hardware support.. any improvement in speed overall would help emulation along. My opinion is that I would rather have native apps perform better, as much as I love emulators.