Cache or cores? Biscuit or cake?
It's about three years since I built my Ryzen system. It's a Ryzen 5 3600 (Zen 2, Socket AM4) with 32GB RAM.
Since dual core became a thing I have been meaning to take over the world with cunning multi-threaded code but about as far as I've got is some shell scripts that do things in parallel.
I figured I should upgrade the machine while AM4 CPUs are still available. I noted that AMD had some CPUs out with this newfangled 3D cache, and that they were pretty fast on certain workloads.
So my decision was biscuit or cake? Cache or cores?
It's taken me a few weeks, and much deliberation but today I decided to go for the cake. I think it will be more fun to have more cores to play with. I have ordered a Ryzen 9 5900X (12 core/24 thread Zen 3) and a cooler with two great big fans and fancy quiet bearings to go with it.
I'll need to revisit my old tests from three years ago and see what sort of a difference all those extra cores make. Obviously, there will be more contention for memory bandwidth. If I get around to it, I might post the results together with the results for the old CPU.
Meantime, I have been writing a little bit of C, finally getting around to something I've been meaning to do for 15 years. One day I'll write something about procrastination. I have an anecdote.
(Score: 3, Interesting) by DannyB on Thursday May 25, @08:51PM
In the 1980s we had used UCSD p-System Pascal. The Pascal is compiled down to p-code. Then a 2K byte PME (p-Machine Emulator) runs the bytecode. Sort of like Java. :-)
You could take your compiled code to other systems that had the p-System PME.
Aside...
So in early 1993, we are looking at rewriting things. One thing that I have my company buy is Turbo Pascal 7. Now this only ran on the PC and not other platforms. But at this point, our only other platform was Macintosh. The Apple II and Apple /// had disappeared. Just Mac and PC.
So I really loved TP7.
Now, in the meantime, a Canadian company Datalex had developed this thing called the Datalex Bubble. What it did was package up the p-System into a DOS EXE. So you could have DOS files that were entire p-System volumes. But the tools it provided for moving things in and out between p-System and DOS were cumbersome and ran inside the p-System.
So my first TP7 programs were called the p-Tools. It was a set of DOS EXEs that allowed you to do a lot of manipulations of files and volumes within the p-System from the DOS command line. The p-System filesystem was rather simplistic. So this was easy, and I knew the p-System inside and out.
My TP7 p-Tools could do massive krunches (compacting) of p-System volumes at lighting speed compares to doing it in the p-System itself with its OS utilities. I could allocate massive buffers in TP7. I could do wildcard copies of files in and out, and automatically convert TEXT files in p-System to and from DOS format.
This made working with p-System in DOS vastly more pleasant. And our commercial software looked like an ordinary DOS program, even though it was really the p-System OS inside.
On Macintosh we moved to MPW Pascal and wrote our own "terminal emulator" but without a "terminal". Just a 24x80 text front end for the UI, but in a Mac window. Now we maintained two Pascal source code bases for Mac and PC and simply carefully made changes to both code bases in sync.
I considered advocating rewriting out of p-System to TP7, as we had done on Mac with MPW. But it was very clear we needed to embrace GUI. So we ended up eventually going another direction to get to a GUI interface, on both Windows and Mac.
At one point, I considered whether we should force our Mac customer base to simply switch to Windows. So I did a survey of our customer records, and it turned out 56% of our customers were Mac. So that idea fell flat. Whatever we did had to be cross platform and GUI.
If a minstrel has musical instruments attached to his bicycle, can it be called a minstrel cycle?