11 ms·
I wish we could just get away from x86 "standard" and move on. If there is something that still needs it, x86 emulation is very efficient nowadays. Just look
by rdudek 2y ago
I wish we could just get away from x86 "standard" and move on. If there is something that still needs it, x86 emulation is very efficient nowadays. Just look what Apple has done with this ARM architecture. Even now, Qualcom's ARM processors running Windows are doing a fantastic job emulating x86 as needed.
- Pet_Ant 2y agoThey want to keep x86 going because they have cross-licensed patents which keep their market share a walled-garden. Anything else would invite competition. Mind you, it's not just them. MIPS was pretty shady with their patent that even if trapped and implemented in software they sued so you could not compete without licensing and losing your margen. SPARC was open... until UltraSPARC IIRC and then they tried something similar. https://www.edn.com/mips-lexra-both-claim-victory-in-markman-ruling/ https://www.edn.com/mips-lexra-both-claim-victory-in-markman... > MIPS said the court’s ruling Friday rejected Lexra’s attempt to limit the claims of U.S. Patent No. 4,814,976 to hardware implementations of the unaligned load and store instructions (LWL, LWR, SWL, SWR) of the MIPS instruction set architecture. MIPS argues the claims should also cover software implementations like Lexra’s That is what is so important about it RISC-V is that it being an open ISA creates a commodity with true competition instead of competing oligopolies.
- throwaway48476 2y agoMulti arch support has never been better and yet x86 is still competitive. Maybe in 10 years everything will be risc V but it doesn't seem to be happening very fast.
- simcop2387 2y ago> That is what is so important about it RISC-V is that it being an open ISA creates a commodity with true competition instead of competing oligopolies. Not just that, but also by being fairly vanilla/boring about a lot of things in the ISA too. Thus letting the ISA itself be less an impediment to being compatible with ARM and x86_64 as far as behavior for memory ordering and such.
- monocasa 2y agoThose patents are starting to expire. Original x86-64 is probably free and clear now, being released in 2001. The big sticking point for general code out there (cmpxchg16b) was released in 2008, so it only has a few more years left. If anything this x86 "reshaping" sounds like a way to get some new patent bricks for the wall of the garden.
- mey 2y agoQualcom's chips do a very good job, but it's not perfect. Not sure if it's the chip or software, but if you need things to work (on either Apple or Windows ARM), emulation isn't suitable still. Apple gets away with it because they just wrote off the gaming market and everything else was forced to quickly migrate to the new platform.
- School-Cotton 2y agoIIRC Apple chips are particularly good at x86 emulation because they have a special option to run with an x86-compatible memory model which is stronger than the standard arm one. A generic arm chip is not necessarily good at x86 emulation.
- saagarjha 2y agoIt could be, if it has fast RCpc.
- maximilianroos 2y agoMove on to what? ARM? Is ARM better in every way than x86? (genuine question)
- saagarjha 2y agoIt’s not. There are a lot of ways it’s cleaner but x86 handles some things (debugging and handling of traps, for example) better.
- kimixa 2y agoApple have shown that you can get x86-tier performance, but it generally costs a similar amount of silicon and engineering effort as those x86 devices. The lack of other competitors managing this suggest the arm ISA isn't "fundamentally" better at delivering that performance, it doesn't seem easier in engineering effort or silicon cost. The Apple products tend to outperform in perf/watt though, but that's hard to really compare as they're focusing on a slightly different market that favors that over "Peak Server Performance". Is ARM better from a license POV? I also don't think so. Some people claim they want away from the "monopoly" of x86 copyright and license shenanigans from Intel and AMD, but I'd argue ARM control their ISA to a similar degree - you need to buy it off ARM to use it, and they have the right to revoke that license. See the Qualcomm/Nuvia legal mess, and that was when both companies were paying ARM already. So in many ways I see ARM vs x86 as the "Coke v Pepsi" of ISAs, they seem pretty similar from the outside, serving pretty much the same use case (even if how they go around serving that use case is different), but some people online have rather dramatic opinions they confuse with "Proven Objective Fact". RISC-V might be a good path away from just repeating the same "Single company controls all licensing" problem, but that's similar to how arm was 15 years ago - there's not really any proven high-performance cores approaching common "desktop" use cases yet, and at least ARM had to do a pretty clean re-write to go from then to now in armv8. Some of the things they "fixed" were very non-obvious until you actually tried to make a large, superscaler speculative implementation too - and who knows what pitfalls there may be in current ISA designs that trip over the "next" performance increasing techniques. Maybe they've managed to avoid all them for the near future, but like many things in R&D we don't really know until we get there.
- 2y ago
- trynumber9 2y agoApple is the only one making ARM chips fast enough to be competitive even with emulation. Qualcomm isn't on that level - they're only on par with AMD and Intel without emulation. The market won't move from the x86 duopoly to Apple's walled garden because they have a fast chip. It's on ARM to make a licensable core that's so much faster than the x86 options that people actually move to it.
- Almondsetat 2y agoApple's emulation literally implements some x86 in hardware, and they will likely drop that silicon when the transition end, so I won't rely on that
- ArchOversight 2y agoIt doesn't implement some x86 in hardware, it implements some memory ordering guarantees in hardware to match what x86 requires. However that is a very minor implementation, there is no actual x86 in Apple's ARM. https://www.sciencedirect.com/science/article/pii/S1383762124000390 https://www.sciencedirect.com/science/article/pii/S138376212... TSO could be implemented by other ARM processors easily as well, to provide the same memory ordering guarantees. Besides that the x86 code is translated by Rosetta to ARM instructions.
- sqeaky 2y agoHe didn't say it implemented any instructions, I would argue that the memory ordering is quite important and part of why other CPU architectures can sometimes be faster or more efficient than x86, it takes effort to guarantee atomicity and apparent read and write ordering. And when a CPU was expending effort that means either transistors or time.
- Findecanor 2y agoApple also implements a couple x86 CPU status register flags not present in AArch64.
- wmf 2y ago
- magic_hamster 2y agoEven if Apple supports x86 emulation, they are doing a subpar job when it comes to actually running things. I got a Mac recently and I was very surprised to see Docker running as an underprivileged second class citizen, literally breaking a lot of flags and features in tools like docker-compose. Come to think of it, it's not even limited to x86 containers (which do run with rosetta) but Docker as a whole. So far in emulation, trying to emulate a full blown x86 Linux distro was excruciatingly slow for me, not even remotely usable. I don't know where this incredible x86 emulation people are talking about on Mac is hiding. Maybe it's some legacy apps I never used. Everything I did try so far was simply not good enough.
- spockz 2y agoWhat flags are you talking about? Everything here runs just fine out of the box. Just slow for x86 images and slow compared to running docker engine or podman on Linux.
- ArchOversight 2y agoDocker on Mac is running a VM in a hypervisor to run Linux.
- pantulis 2y ago> I don't know where this incredible x86 emulation people are talking about on Mac is hiding. It's in Rosetta, running x86 binaries compiled for older macOS versions. The state of Docker in macOS has never been good, with Orbdev being the best Docker compatible container engine for desktop Macs.
- 2OEH8eoCRo0 2y agoWhat have they done with ARM? Cut out all I/O put memory on package and pay for the latest TSMC node? I think ARM is overhyped because people see Apple's success and just assume aarch64 > x86_64
- tester756 2y ago>I think ARM is overhyped because people see Apple's success and just assume aarch64 > x86_64 It seems like that's the case "ARM has bigger share in people's minds than actual numbers"
- Sakos 2y agoI simply can't comprehend why people are so all-in on ARM. Snapdragon X Elite support in the Linux kernel is still a work in progress. There's still no GPU driver. It's been months. Is this going to happen every time there's a new Snapdragon? How is this sustainable long-term? If Intel or AMD release a new CPU architecture, it's basically supported out of the box, even if it might need some bug fixing (which actually happens fairly regularly). How does Qualcomm's commitment to Linux and an open platform actually stack up to x86? Because the biggest benefit of x86 is that it forces interoperability through heavy standardization and established culture. Every ARM manufacturer is basically doing their own thing and it requires the manufacturer to give a crap about Linux or a volunteer group months or years of effort to get things running (see Asahi). And what happens when an ARM-based device is EoL?
- WithinReason 2y agoWhat's wrong with x86? According to Jim Keller the disadvantage is minor: https://www.youtube.com/watch?v=rfFuTgnvwgs&t=474s https://www.youtube.com/watch?v=rfFuTgnvwgs&t=474s (I wish Linus let him finish though)
- tester756 2y ago>I wish we could just get away from x86 "standard" and move on. But actually why? is there reason that isn't licensing? Because perf or perf/watt is not the reason
- t-3 2y agoThe best reason I can think of is aesthetic: x86 is the ugliest (extant?) ISA. Nobody wants to read, write, or think about x86 assembly. Most RISCs are easy and enjoyable to read, reason about, and write by hand.
- akira2501 2y agoNo one "needs" a particular architecture. It's just that some of them are better suited to certain problems than others. If you really want to get rid of something and "move on" why not get rid of the wild class of devastating speculation bugs that every OOO processor in existence currently has? Far more valuable than worrying about how instruction bits are arranged in a stream.
- zamadatix 2y agoThe main problem with non-speculative options isn't hardware it's performance. You can turn x86 CPUs into in order machines without respinning hardware. Nobody wants to do it because it's slow as molasses. If there was a completely alternative design that was better than speculative execution wholesale then it'd be back to being the original "just go to the fastest thing".
- Atotalnoob 2y agoYes people need a particular architecture. There are many legacy systems that still rely on IBM chips, mainframes, etc. They can’t just move on without rebuilding the entire system from scratch. a monumental and risky proposition. Even if tomorrow everyone went all in on arm, risc5, whatever, x86 is here to stay.
- CamperBob2 2y agowhy not get rid of the wild class of devastating speculation bugs that every OOO processor in existence currently has? Because almost no one but cloud-computing providers have a threat model that justifies the performance hit (and, not coincidentally, the carbon footprint) associated with crippled CPUs.
- nerdjon 2y agoI think for most 'general' computing, yeah Arm is fine. It has been that way for a while with smart phones and tablets being the primary device many people use now. Either you can run it through a compatibility layer like Rosetta 2 or it shifts to native. The performance hit is unlikely to really be felt for something like Word. But the traditional gaming market (not mobile, I am not dismissing mobile but it is not the traditional market that is relevant to this conversation) is likely not going to make that shift anytime soon. To the best of my knowledge I have yet to see any ability for a consumer to build their own ARM pc (someone correct me if I am wrong here?) and there are many gamers that will fight tooth and nail to not give that up. If consoles did it, it would most likely mean a break in backwards compatibility or a lot of investment in emulation. With consoles often being the devices that set a performance standard for PC's, I doubt they would be moving to ARM in the next generation so would not happen until the 10th generation. We are likely 2-3 years away from hearing about gen 9, and then another ~8 years until ARM becomes a conversation for any serious game console. There just would not be any incentive for PC to make a serious switch until that point (or around that time) since it would also fruther complicate game development. There just have not been much movement in this regard. We are seeing a few ports come to Mac (and iPhone) but those are the exceptions. Not saying that companies are not trying to try to push Arm hardware for gaming, try to claim that their compatibility layer is just fine for playing games on Windows. I am sure some people will do it. But I just don't see any serious effort to push Arm into gaming outside of mobile devices.
- heraldgeezer 2y agoThis. I understand web devs can just use whatever runs Google Chrome but the real world is a bit more complex. CS2 has over 900k online on Steam right now... Where people push the game to 200fps plus. A PC that can do that can also do anything else. Dev work, VMs, Docker, whatever. Why switch to ARM? Because their soy starbuxx latte workplace gets 2-3h more in battery life? But I have to disagree on >With consoles often being the devices that set a performance standard for PC's, I doubt they would be moving to ARM in the next generation so would not happen until the 10th generation. We are likely 2-3 years away from hearing about gen 9, and then another ~8 years until ARM becomes a conversation for any serious game console. There just would not be any incentive for PC to make a serious switch until that point (or around that time) since it would also fruther complicate game development. Consoles used to be MIPS, POWERPC and stuff and PCs where x86 "back then". XBOX is like the first x86 console. So I dunno your point here. Really man. ??? Switch is ARM right. Nintendo Switch. Sony and MS went from POWERPC to x86 as IBM could not make a PPC CPU fast enough and ARM was not good in a big formfactor. Sony and MS use AMD hardware but in PCs Nvidia GPUS are still the best, yes they are my experiece personally and look at numbers. XBOX1 used to be nvidia gforce 3 but abd pricing. So all went AMD later. PS3 was CELL 8 core PPC and Nvidia 70xx GPU. 360 was PPC and AMD gpu. Wii was PPC and AMD gpu. >There just have not been much movement in this regard. We are seeing a few ports come to Mac (and iPhone) but those are the exceptions. Nobody on Mac is actually a gamer. >(not mobile, I am not dismissing mobile but it is not the traditional market that is relevant to this conversation I will btw. I do not understand why people here love mobile games. No wait I do. They are easy, quick and P2W. They are busy adults or kids or pajeets with no money. In mobile, what sells? Gatcha games, pay to win trash. There are some gems but few and far between. They are built in a predatory way to take your money.
- heraldgeezer 2y agoWhy? AMDs new x86 is just as good as M3. For gaming, emulation is shit. I use a desktop gaming PC and I can do anything. Use it as a workstation too. Why should I switch to ARM. Why should our enterprise laptops be ARM? Just please, you are just spouting nonsense.