4 ms·
How does it run native binaries from other ISA if ILP is supposed to be handled by the compiler…
by ip26 4y ago
How does it run native binaries from other ISA if ILP is supposed to be handled by the compiler…
- ncmncm 4y agoLooks like ordinary emulation, Qemu.
- mhh__ 4y agoBy having it's own compiler in the background. Transmeta did this 20 years ago, sadly the IP is in a bin somewhere inside Intel (?) or some other giant. When we talk about speculation and out of order execution we imagine the CPU is a kind of giant dependency-graph engine but this isn't actually true. The genius of modern hardware design (although kicked off by Tomasulo in the 60s) is that you can "compress" this idea into a real circuit with a finite number of gates and SRAM etc. The quality of the branch prediction lets you get away with a lot on a fairly dumb "throw stuff on a buffer, speculate across memory accesses, pop (commit) off the buffer when the pie's finished cooking" model inside the processor. The draw of this and originally Transmeta is that you have an extremely wide dumb processor in front of a smart software frontend that can do much more complicated work and scheduling based on the all-important runtime information that static VLIW sorely lacked (and thus lead to Intel doing all kinds of stuff with Itanium, hence it ending up EPIC rather than a true VLIW spiritually). Now, software is slow, the way Transmeta got around this is by having a physical cache (the "Tcache") for storing translated instructions in. https://www.cs.cornell.edu/courses/cs6120/2019fa/blog/transmeta/ https://www.cs.cornell.edu/courses/cs6120/2019fa/blog/transm... https://www.realworldtech.com/crusoe-intro/5/ https://www.realworldtech.com/crusoe-intro/5/ Some reverse engineering from the time. Note the amount of nops in the firmware. https://safari.ethz.ch/digitaltechnik/spring2019/lib/exe/fetch.php?media=dehnert_transmeta_code_morphing_software.pdf https://safari.ethz.ch/digitaltechnik/spring2019/lib/exe/fet...
- erincandescent 4y agoNVIDIA Denver was basically the Transmeta design with an ARM instead of x86 frontend. It was very underwhelming.
- my123 4y ago> is in a bin somewhere inside Intel NVIDIA. For example, the Carmel core, shipping on Tegra Xavier.
- mhh__ 4y agoDid Nvidia get the rights to CMS? I thought Nvidia got some power management stuff but Intel got the rest of it
- my123 4y agohttps://www.techpowerup.com/67814/nvidia-licenses-technologies-from-transmeta-corporation https://www.techpowerup.com/67814/nvidia-licenses-technologi... > The agreement grants to NVIDIA a non-exclusive and fully paid-up license to all of Transmeta's patents and patent applications,
- Symmetry 4y agoThey were going to have their cores be able to run both ARM and x86 binaries but IIRC patent issues with Intel prevented them from doing both so they just went with ARM. Whether you need the x86 patents to run have a Transmeta style processor running x86 might be something that can only be settled by going to court.
- 2000UltraDeluxe 4y agoThe first thing that came to my mind was that someone bought the old Transmeta IP. The dream of a multi-GHz m68k lives on! :)
- windenntw 4y agoYou can already get that by replacing the cpu with a pistorm: https://linuxjedi.co.uk/2021/12/27/800mips-amiga-with-emu68-and-pistorm/ https://linuxjedi.co.uk/2021/12/27/800mips-amiga-with-emu68-...
- LargoLasskhyfv 4y agoNot really. AFAIK it all amounts to something between 600 to 800Mhz for real world code, at best. About the same for affordable FPGAs. That aside, I don't really get this nostalgy for these systems. I don't care about Doom, or some port of Quake. While 68K assembly was much nicer for me than anything common today, what do I get from that without a usable Browser, Office, "daily driver" apps? Show me how to port Firefox, Chromium or something functionally equivalent to these, and how those perform! :-) Or Blender. (Or Android 68K! (Giggle))
- 2000UltraDeluxe 4y agoIf we're talking about an actual, modern 68060 CPU running at multiple GHz, then it would be trivial to run Firefox or Chromium -- just install Debian m68k and compile. :) Apart from the nostalgy factor, I suspect there would be no actual benefit from such a system. I doubt m68k would compare well to ARM or x64 in terms of compatibility or modern-app performance.
- amelius 4y agoPerhaps the microcode can be flashed?