3 ms·
I'm actually not worried, for a few reasons; - I already do cross-arch development day-in and day out between x86 and ARM, and have only run into hard blockers
by adrianpike 6y ago
I'm actually not worried, for a few reasons;
- I already do cross-arch development day-in and day out between x86 and ARM, and have only run into hard blockers on a library or tool a handful of times. The solve was generally pretty straightforward to either use an ARM-compatible alternative, or to cross-compile it myself.
- We've done this many many times before and it's not that bad. I know I'm not the only one old enough here to remember the days of having heterogeneous fleets across PPC, SPARC, and x86. Or even more recent - different extensions for x86 with different chipset manufacturers.
- kevin_thibedeau 6y agoTons of x86 code accesses misaligned addresses.
- saagarjha 6y agoWell, that's only because it's efficient to do so on x86. Code recompiled for ARM isn't going to do that.
- DaiPlusPlus 6y agoIt’s not that simple if that code is using explicit struct layouts or x86/x64 intrinsics. Forgive my ignorance though - but what ISA extensions are in Apple’s ARM chips for SIMD? Intel poured a lot of effort into SSE+AXE - Does Apple have a compete there?
- saagarjha 6y ago> It’s not that simple if that code is using explicit struct layouts or x86/x64 intrinsics. Performance sensitive code that relies on alignment guarantees and other platform details will not work and need to be updated, yes. IIRC Apple's chips do NEON for SIMD, not sure if they support SVE yet. (But I figure they will have to once it becomes a required part of the ARM standard…)
- Symmetry 6y agoI actually wouldn't be surprised if Apple were to put SVE in their first desktop class ARM chip. They were the first to move to 64 bits after all and SVE has been optional in the standard for quite a while and they wouldn't be the first implementer this time.
- DaiPlusPlus 6y agoApple wasn't the first with a 64-bit ARM chip - AppliedMicro released theirs in 2011: https://www.businesswire.com/news/home/20111027006673/en/AppliedMicro-Showcases-World%E2%80%99s-64-bit-ARM-v8-Core https://www.businesswire.com/news/home/20111027006673/en/App... - the Apple A7 wasn't released for another 2 years after that.
- fomine3 6y agoThe chip is announced in 2011 but when the chip available as a server? I assume near the time to iPhone 5s (2013/9). https://www.servethehome.com/hp-announces-retail-availability-arm-based-moonshot-modules/ https://www.servethehome.com/hp-announces-retail-availabilit...
- DaiPlusPlus 6y agoBut back in those very heterogeneous days (don’t forget go throw in Alpha and MIPS!) - computers running more exotic processors like SPARC were workstation-class and their manufacturers were responsive to requests from the SE community - so while I share your lack of concern about heterogeneity - I am concerned that Apple won’t be making their ARM platform the best for developer workloads (at least, non-iOS, non-macOS workloads) - remember that besides freeing them from Intel’s slower release schedule, Apple’s other main incentive for adopting ARM is to ensure their computers have a great performance-per-watt ratio but with a low power budget. I know their latest A-series chips are very, very competitive (sorry, I mean: mopping the floor) with Intel’s current mainstream chips, Apple’s expertise is still with low-power mobile devices - I’m not convinced Apple will be switching away from Xeon Chips in the MacPro or i7 (i9?) chips in the high-end MBPs - but most SEs I know using MBPs have their 13-inch models which are moving to ARM right away. In short: I feel Apple’s consumer-oriented direction is starting to be at-odds with what they need to do in order to remain a compelling general development platform. Remember that macOS became a favourite for web-application development only around 12-13 years ago (prior to that it was seen as an OS for creative-types) - because they were selling nice hardware with an equally nice Unix-family OS with a compelling desktop experience - take a look at typical Linux desktop distros from around the same time: visual eyesores and incompatible with most laptops thanks to OEM driver issues. Apple wasn’t specifically targeting software developers at all - they were even showing ominous signs of disinterest by discontinuing their X Windos server and going-back on their promise of establishing Java as a pillar of the OS. With the move to ARM on laptops I think Apple will just lock-down the bootloader and won’t look back. What’s funny now is Windows 10’s WSL and Windows Terminal, Docker support, etc are suddenly making Microsoft look good as an OS for writing code for non-Microsoft platforms. And at least with a Windows laptop - even ARM Windows laptops - you can tinker with the bootloader and fire-up Slackware if you really wanted to.
- adrianpike 6y agoYep, I think we're of one mind here. I'm not worried about the ARM architecture shift, but the whole direction of the platform makes me expect I won't be using a Macbook as my primary dev machine much longer. Interestingly enough - for personal hacks (mostly cross-compiling Golang to ARM, natch) I'm actually using WSL lately, and it's definitely good enough. Not perfect, but nothing much is.
- lsllc 6y agoI'm actually happy about this! With the recent decline of pretty much every UNIX vendor/platform and the now-deep proliferation of Intel/Linux, it's beginning to feel like MS/IE6 in the early 2000's all over again. We need diversity and competition for both OS's and processors (just as we did with browsers back then). In fact, let's bring back Ultrix/OSF/1, DG-UX, Solaris! (... we can skip HP/UX and SCO because they're truly awful). Note that OpenVMS has already apparently made it's x86_64 comeback!
- pjmlp 6y agoActually I liked HP Vaults, long before there was any talk about containers and similar on UNIX.