15 ms·
Who else is excited that we are might revive the 80s Cambrian explosion of different system system and architectures? Back then there were so many options.
by ulzeraj 5y ago
Who else is excited that we are might revive the 80s Cambrian explosion of different system system and architectures? Back then there were so many options.
- SomeHacker44 5y agoI would love to see a CPU Renaissance like this. Back then we had tons of variety, 680x0, x86, Rx000, various lisp machines, Vector computers, VLIW and Multiflow, Sparc, VAX, early ARM, message passing machines, 1-bit multiprocessors, Hypercubes, WD CPUs, and later an explosion of interesting RISC architectures... It was really interesting and enjoyable era.
- TomSwirly 5y agoAs someone who programmed at that time, it was also very hard to write even small production programs. Today I do things in a half-an-hour with Python that would have taken me days - maybe weeks! - to accomplish in 1978. Each little vendor had their own janky tooling. Compilers cost hundreds of 1970s dollars (until Borland's $49 Turbo Pascal, over $150 in today's money). Don't get me wrong. I was very unhappy when Intel dominated everything. The fact that ARM, an open-source architecture, is now eating Intel's lunch makes me happy. But I'd honestly be glad if everyone just settled on ARM and were done with it. It was fun messing with all these weird processors (my first team leader job was writing an operating system for a pocket computer running the 65816 processor!) but it meant that actually generating work was very slow.
- xoa 5y agoI mostly agree with your overall argument, but the "mostly" qualification goes along with a small but important correction: >The fact that ARM, an open-source architecture ARM is in no way open, it's fully proprietary. Unlike x86 it is not vertically integrated and is available for anyone to license all the way to the architectural level, and that's huge. But said licenses certainly are not free either, nor Free. There are promising actual open architectures, in particular OpenPOWER and RISC-V come to mind as interesting with a lot of solid work behind them. So that's one small remaining opening IMO, even if it's more work on the dev side I wouldn't mind having those stick around and get more competitive.
- Pet_Ant 5y agoSPARC is open and not only that Sun shared some actual cores that were used in production. I don’t know why Power gets mentioned but SPARC doesn’t.
- patrec 5y agoProbably because few would consider Sparc promising, since, unlike Power and certainly Risc-V, it's pretty much dead?
- lizknope 5y agoPicking a CPU is not just about the CPU architecture. It is mainly about the ecosystem around that processor. ARM has a huge amount of IP, bus fabrics, compilers, operating systems, boot loaders, and people you can hire with knowledge of all of that. There are far more people out there with ARM experience than SPARC. I don't really see anybody interested in POWER outside of IBM and the chips they sell.
- luch 5y agowe won't get a CPU Renaissance, but we are seeing a new era of "hybrid processors", aka dedicated processors running a custom ISA. For example, Huawei's Kirin NPU.
- meibo 5y agoMaybe, but this seems to be a bug with Apple's IO toolkit on x86, so it's unrelated(other than x86 support on macOS already falling apart, which is completely unexpected, considering the quality of the rest of the OS after recent releases).
- varjag 5y agoThis is a bug on M1.
- rob74 5y agoHmmm... the chances for that are pretty slim I'm afraid. "Apple Silicon" is not a new system, it's just one of the large incumbents switching to another architecture (which is also not a first, this now being their fourth architecture, after 680x0, PowerPC and x86). In the desktop/notebook market, Wintel and Apple are firmly entrenched, with only ChromeOS and Linux challenging them - plus a few less significant OSes (FreeBSD, ReactOS anyone?). For mobile devices, we had a bit of a "Cambrian explosion", unfortunately followed by a very quick extinction, which left us with another duopoly. Here also there are free alternatives which however have very marginal market share. As for actual CPU architectures, there are only two that really matter at the moment: x86/AMD64 and ARM. It's of course very cool that ARM has proved itself flexible enough to be used from (almost) the smallest embedded devices to supercomputers (not to mention Apple M1), but there's not that much diversity as there was in the 80s either...
- slver 5y agoApple’s arm has a partially different instruction set than other arm devices. So it’s not just arm, something to consider.
- wayoutthere 5y agoEvery ARM licensee does this though; they license the core designs from ARM and add features (including additional instructions) around it to package into an SOC. It’s just that Apple has the scale to design their own SOCs instead of buying one from Qualcomm or Samsung.
- saagarjha 5y agoMost licensees do not, in fact, add their own instructions.
- bluGill 5y agoWhich most - there is most as in number of cores shipped, and most as in number of organizations who have a license. The second I have no doubt you are correct - I know of several organizations that have licensed ARM just to ensure they have a long term plan to get more without the CPU going obsolete again (one company has spent billions porting software that was perfectly working on a 16 bit CPUs that went obsolete - there was plenty of CPU for any foreseeable feature, but no ability to get more). These want something standard - they are kind of hoping that they can combine a production run with someone else in 10 years when they need more supply and thus save money on setup fees. The first is a lot harder. The big players ship a lot of CPUs, and they the volumes to make some customization for their use case worth it. However I don't know how to get real numbers.
- simias 5y agoBack then code was usually closely tied to the hardware with very little abstraction. Nowadays even if you write in a low level language it's not difficult to target a wide array of devices if you go through standard interfaces. Proprietary software is probably the main reason we haven't had a whole lot of diversity in ISAs over the past couple of decades (see: Itanium). It's no coincidence that ARM's mainstream explosion is tied to Linux (be it GNU/ or Android/).
- bluGill 5y agoBack then C was a high level language. Programmers regularly dropped down to assembly (or even raw machine bytes) when they needed the best performance. Now C is considered low level and compilers can optimize much better than you can in almost all cases so more programmers are only vaugly aware of assembly. Though you are correct, a lot of abstraction today makes things portable in ways that in the past they were not. The abstraction has a small performance and memory cost which wouldn't have been acceptable now, but today it is in the noise (cache misses are much more important and good abstractions avoid them)
- astrange 5y ago> Now C is considered low level and compilers can optimize much better than you can in almost all cases so more programmers are only vaugly aware of assembly. This is not true, compilers don’t generate super-optimized asm output from C. It’s actually not that optimizable because eg the memory access is too low level so there are aliasing issues. But optimizing doesn’t actually help most programs on modern CPUs so it’s not worth improving this.
- greyhair 5y agoARM's first explosion was in PDAs, not running Linux. SA110 and XScale. A ton of ARM hardware is embedded cores running VxWorks or EmBed. M0 through M4. Yes, Phones are the dominant core consumer here, but there is a whole bunch of embedded/IoT stuff shipping ARM cores every day that will never see Linux installed.
- 5y ago
- fdroidmstrrce 5y agoDoubt. CPU hasn't been the limiting hardware in a decade. I think Intel stagnated because people have prioritized spending money on GPUs, memory, and SSDs. Even when I'm writing an intensive program, I'm using multiple cores, so a single threaded benefit is useless to me. I have a half a mind to think the m1 is a marketing gimmick because making a better processor was low hanging fruit that CPU companies aren't trying to compete on(outside of price).
- hansel_der 5y ago> Even when I'm writing an intensive program, I'm using multiple cores, so a single threaded benefit is useless to me. maybe poorly worded but i would like to point out that a single-thred performance gain is never useless, not even with a highly a parallel workload. i would think that due to multi-stage cpu caches and ipc overhead, something within one core/thread will be way more efficient.
- fnord77 5y agomust be terrifying for build and release engineers
- deleted 5y ago[deleted]
- aequitas 5y agoMy bet is we will have a small explosion of cheap consumer laptops running ARM, but more as a marketing ploy to ride the hype train around Apple computers with ARM better being much better than Intel. (even though those ARM chips won't compare to the Apple Silicon, but like I said, sales).
- mywittyname 5y agoHow is is the ARM build of Windows?
- userbinator 5y agoLook in the microcontroller space if you want more "diversity". There are 4-bit MCUs, 8 and 16-bit ones with banked/paged memory, Harvard architectures, non-byte instruction sizes, etc.
- pokot0 5y agoBefore we had PC and phones, now we only have phones in a different case. It looks quite the opposite to me.... :(
- thisisnico 5y agoAnyone remember VIA x86 CPUs? https://www.viatech.com/en/silicon/processors/ https://www.viatech.com/en/silicon/processors/
- niutech 5y agoYes, I still have a working VIA C7 netbook.