i am more worried about the architecture timebombs.
would you buy a 60,000 dollar workstation for private use when the transition to ARM lurks around the corner?
I do not know how far around the corner it is. Cannot comment simply because I do not know to what exactly the ARM vs. Xeon vs. Ryzen race boils down.
One is sure - and this is thanks to my recent presence here and to my presence with my current employer.
While with the latest I learned that the "X" interrupt management is still way behind of Windows, Linux, Free(Net)BSD.
It sux horribly and blows.
While here I was "forced" to look at how things did look around G4 and G5. All I can say, Larry Barras (the only guy who made "9" AIM and later was hired by Apple) did see the problems very exactly back in 2003-4-5.
If you check out his (100% it's his!) code for Apple K2 SATA (same as Broadcom / ServerWorks "Frodo") than you see, Larry wrote own interrupt controller within the K2Root. It is in AppleK2SATARoot.cp file,
google duckduckgo is your friend.
Look at the AppleK2SATAIC implementation!
Godfrey and Larry may not like each other but neither is stupid to say the least.
There was a mighty reason Larry made the K2Root for G5 the way he did: because he knew, interrupts do suck.
Today almost nothing did change!
They tried to fix these goddam interrupts in Yosemite. Did not work out.
Than they tried to fix them in
ElCrapitan El Capitan. That did not work out either.
Than they fixed to some degree in Sierra, that at least put a very thick paint over the old
bug implementation failure and it is a bit less obvious. But it's still there (as far as Mojave). I did not look into
Калинка, калинка, калинка моя, https://en.wikipedia.org/wiki/Kalinka_(song) Catalina yet, but do not expect any improvement.
No developer information regarding that is updated after ca. 2011.
This is a very serious problem (called MSI-X interrupts) where any modern OS completely obliterates "X", at least on the paper.
One can write (and we see, Larry Barras prepared for that) an own MSI-X interrupt handler.
In 2020 we are still behind Larry's code. Apple's latest NVMe driver knows about MSI-X, so do I. As far as I see, I am the only person outside of Apple who has the MSI-X handler. Great... but all MSI-X handlers (either mine or of Apple) deal with the first interrupt vector only!
Which sux and blows.
Where I expect it really suck and blow would be a gazillion-core processor implementation: no matter, how many cores you have, all your driver code depends on a single interrupt vector... that means, on one single core! The IOP-s should suffer.
But no, instead all kind of mind-blowing coolness is implemented in all that... "Калинка". But as I guess, still no proper MSI-X implementation.
The best thing is that Apple wants people be less involved with writing drivers "because it's difficult" than fixing their debugging tools. Windows developers complain about Microsoft debugger called "
Windbag" "Windbug". That is infinitely better to work with than with the LLDB. Shame on Apple.