On 18 September 2015 at 13:06, Pontus Pihlgren <pon...@update.uu.se> wrote: > I've been told this more than a few times and read it in various places. > It always make me wonder, could we not allow a mode in modern Intel > processors that lets us bypass the x86 code emulation/translation and > run "directly on the metal" (if there were such a thing). > > The purpose, of course, would be to gain performance. Certainly this > would already have been done if there was any significant gain to be > had?
I think not, because the "RISC core interpreting x86 instructions" is a fairly gross over-simplification, as best as I have been able to determine. Yes, all C21 x86 chips borrow lots of design principles from RISC, but they are CISC chips executing CISC code -- just doing a lot of fancy on-the-fly optimisations. There isn't an underlying separate different microcode. That has been done, though. It was the Transmeta Crusoe line of processors. These were not directly x86-compatible at all: they had their own instruction set, and during boot, loaded a translation layer on top which executed x86 code via a sort of optimising compiler/interpreter with JIT. The purpose was to achieve very low power consumption, for portables. The performance was not as good as native x86 even at the time -- although nearly -- but the processors used significantly less power. They were not RISC, though: they were VLIW underneath. I always thought it was *the* critical mistake of Transmeta not to at least release the native instruction set. If they could also execute Motorola 680x0 code, or PowerPC code, or Alpha code, or any other discontinued (or effectively discontinued) instruction set, they would still have a market today. -- Liam Proven • Profile: http://lproven.livejournal.com/profile Email: lpro...@cix.co.uk • GMail/G+/Twitter/Flickr/Facebook: lproven MSN: lpro...@hotmail.com • Skype/AIM/Yahoo/LinkedIn: liamproven Cell/Mobiles: +44 7939-087884 (UK) • +420 702 829 053 (ČR)