Arm64 Windows running with hardware virtualization on Apple Silicon
twitter.com
twitter.com
The virtualization is needed because you are running the guest OS on top of the host OS. The same situation as if you were running x64 windows on an intel mac (e.g. via Virtualbox, vmware, or Parallels): in both cases you need kernel-level support in the host OS so that it can act as a hypervisor, and hardware support from the processor (in Intel it's done via vt-x) to support things like nested paging, ring -1, etc.
Not sure if we'll get there on an M1 without a heck of a lot more work, but it's early days and things show lots of promise.
What I really want though is not to have to own Apple hardware for this. The M1 shows such promise that it would be crazy for this sort of chip not to be pursued as the next level of commodity chips.
The other issue with ARM is that there are several dozen chip varieties whereas x86 only has Intel and AMD. This could hopefully accelerate mini-CPU companies springing up with their own ARM64 chips producing their own hardware running Windows ARM64. Google is rumored to be designing their own CPUs for future high-powered Chromebooks and Pixel phones. Qualcomm has an ARM64 chip powering the Microsoft Surface ProX but it’s nowhere near the performance levels of M1. Microsoft is starting to experiment with CPUs with the Pluton chip, maybe they will design an “M1” flagship chip going forward for their own Surface product line.
I hadn't even thought of that. There's real potential to break open the market on general computing/desktop/laptop chips here. I can see how that might get complicated from an OS support standpoint, but it could also instill a remarkable amount of innovation-driven competition. It probably already has, with board-room meetings (and more importantly some long lunches with engineers hashing things out) realizing the M1 is the one to beat. And since it's Apple, and Apple will probably remain niche & not license their tech to others, the first to market with even an 80% M1 solution will be in good shape.
Honestly I'm most impressed by the GPU side of the M1. Rough equivalence to a dedicated 1050 Ti is crazy. That's in the respectable-low-end gaming side of things: I'm on a weird Intel-AMD hybrid chipset (hades canyon) that puts me between a 1050 and 1060 and I'm running AC:Valhalla on moderate settings ~45fps. It seems like Rosetta can achieve something around 70% performance, so less demanding new games and most older games should be playable for anyone who just wants to play and doesn't mind a steady 30fps and modest textures & AA. I think some Wine variant (CrossOver?) is already working to make native Windows games playable under Rosetta as well.
It wouldn't happen overnight, but the prospect of making AAA games playable on a $700 off the shelf mini of $1000 mac book would spur on the big game engine makers to port their tools over to make M1 a build target. Sure if you're tech savvy and shop around and don't mind at least a few hours of integration hell you can build yourself a very budget low-end gaming pc for ~$500 by forgoing a dedicate GPU and relying on the Vega 11 in Ryzan 5 3400G and that's without an OS and a much larger footprint. (Though if Steam gets their act together and offers a cloud-streaming option where I don't have to repurchase my games ::ahem, Stadia:: I'd forgo gaming hardware and stick to a strong Ryzen CPU w/ solid APU for non-gaming tasks.)
Seems like a very interesting future if they are.
https://www.theverge.com/2020/9/30/21495510/microsoft-window...
The problem though is chip architecture and the consequent software compatibility issues, and when compatible the performance issues.
So, given the potential future of this choice of architecture and chip design, every development in compatibility or performance really does have significant consequences.
And of course, the recommended community guidelines for dealing with posts you don't think are relevant or newsworthy to HN is to flag them instead of complaining in comments. If enough people share your opinion, it will disappear. If not, then it is de facto relevant to the community.
Is it though? People have been running GNU/Linux on aarch64-based laptops, SBCs, phones and servers for years now (and not just GNU/Linux, there's even Windows these days, as seen in this submission!). This is a well supported architecture across multiple distributions and OSes. Granted, M1 is a rather beefy chip to see in a aarch64-based laptop, but compatibility and performance issues of 64-bit ARM are areas that seem pretty well researched in 2020. It's just macOS being late in the game.
Apple II wasn’t the first personal computer, Mac wasn’t the fist GUI, iPod not the first MP3 player, iPhone not the first touchscreen smartphone.
It’s just that they often make the first a lot of people want to buy.
- They are able to create compelling products.
- Most people are stupid enough to be easily deceived by behemoth corp, to the point that other behemoths must copy them to stay in business.
Otherwise, you may be able to find ARM laptops, but nothing in this product class, and it is the entire chip design, not just the architecture, that makes this unique.
For a few years speculation on the benefits of arm servers etc. have been bouncing around with cautious steps in that direction. The M1 points more strongly towards their viability, as well as for consumer devices, than anything else I can think of. I just don't want to buy Apple hardware to get it.
Why, any objections?
You can do something similar, and I'll upvote your project as well :)