Thursday, October 5, 2017

Summer PC upgrade: $340 = 12 cores, 24 threads, 48GB RAM, with a Minty OS

I Love the smell of new hardware in the morning!

I really wanted a parallel processing monster of a machine, and while my "6" *cough-3-cough* core 6300FX worked fine, simply not everything would scale nicely on it. In a way, it's gotten better as software is more optimized now, but my own scripting really lagged compared to running on my core i5. The FX 6 core cpu's are really 3 modules with a pair of pipelines sharing some units. Floating point for example gets shared, so performance drops in those scenarios.


AMD's Ryzen is here. Looking at Ryzen 1700, that $300 would have gotten me a nice new 8 core beast of a CPU, but I'd still have to purchase memory and motherboard. Had I gone with 24GB of memory, this upgrade would be $260. DDR4 for a modern CPU is about $160 for 16GB. A decent upgrade here would be closer to $600, and I wasn't ready to spend that much.


Time to embrace old Xeons. Of note, Xeon boards are incredibly expensive, even old ones. Buy used, but be prepared to return them - those pins are fragile. I purchased a EATX board that wouldn't post. Ebay return went smoothly, and I ended up with a decent ATX dual xeon board. 

Rounding up:

Xeon x5670 (2)..........$70
Asus Z8na-d6c..........$110
Hynix 48GB DDR3 1600...$160
___________________________
Total..................$340

I could have gone with half the RAM and saved a bunch, but I figure I can mess around with a 32GB ramdrive and still have oodles of memory left over.


I probably went a little farther back in time than intended but the performance is surprising. I picked up a "Gulftown" Xeon pair - x5670 at $35 a processor. This is 7 years old, hence the price being equivalent to a raspberry pi...








Obligatory Htop ;)


After all this time, I'm still a compiz fan.


/proc/cpuinfo shows that the CPU's idle at only 1.6GHz saving power. Cores in use jump to 2.93GHz.



It's so nice to install an OS and have it detect everything. Add-in cards like sound (no sound on xeon boards usually), USB3.0 (predates the board), USB devices like the WiFi AC adapter - nothing to worry about. Linux Mint is awesome ;)


https://linuxmint.com/


Why go with old Xeons? Why not new ones?

Well, my reasoning is cost, and a lack of substantial improvement in IPC with newer versions. Here's a general comparison on how this old architecture fared over time using geekbench.

Disclaimer - looking at 1 benchmark of different architectures, is not a very accurate way to gauge performance. A different architecture may offer specific advantages or disadvantages for that benchmark. Newer models of xeons are an evolution of the previous model where much of the architecture stays the same so I'm still considering this a fair comparison across the xeons.


Looking at 4 cores and ~3.0GHz as the 6 core models aren't as common throughout frequency ranges.

Scores obtained from geekbench - https://browser.geekbench.com/v4/cpu/ using a median score from the median page, strictly for 4 cores (multiple results from the same person considered as one result):

Looking at prices is tricky. The gulftown can be used in dual processor config at $17 a processor. Intel's 1xxx lines however cannot (and are cheap as a result). Lets consider the closest in spec 2xxx series, here the performance numbers can skew because the CPUs start using higher turbo rates - but this shows how price jumps for newer multi-CPU models.

2x4 cores:

2010 Gulftown....X5667 3.06GHz.........2737/15270 - $34
2010 Gulftown....X5677 3.47GHz.........2897/16724 - $70
2012 Ivy Bridge..E5 2637-v2 3.5GHz.....3125/18078 - $460
2013 Haswell.....E5 2623-v3 3.0GHz+....3373/17361 - $960
2015 Broadwell...E5 2623-v4 2.6GHz.....3427/17053 - $960
2015 Broadwell...E5 2637-v4 3.5GHz.....3510/22771 - $2400
2016 Skylake.....Unable to find close comparison
2x6 cores (my pick):
2010 Gulftown....X5760 2.97GHz.........2599/23882 - $70
1x8 cores (new AMD alternative over my budget):
2017 Ryzen.......1700 3.0-3.7GHz.......4244/22447 - $300

To be fair to Intel, the new architecture isn't ALL about IPC. Frequency and the number of cores has increased, while dropping power usage - a pretty tough feat. However the cost can be high. e.g. A recent high core count xeons pair:


2016 Broadwell...E5 2699-v4 2.2-3.6GHz.3000/66305 - $8000


I'm looking for a general comparison on how this architecture has aged. How does single core and multicore performance change with each generation? Is it worth it buying old xeons? 

By the numbers, this old architecture holds up surprisingly well. I'm sure you can probably get some hardware features for encryption or video encoding on the more modern architectures; some more SIMD etc. Keep in mind that xeon architecture evolved from previous generations, so it's rare for there to be a huge difference.


Going for the 6 cores, I'm sacrificing some single core speed, for a lot more multi-processes performance. I think my CPU governor choice may be contributing to a lower than expected single core performance compared to others on geekbench. I'll have to experiment with that.

The Ryzen is an interesting addition in these comparisons. It's a single CPU and was released as I was building my machine. That single CPU score is pretty solid. I'm quite surprised the old xeons can keep up in multicore score (12 cores vs 8 though...). Granted, the benchmark may simply be favorable to AMD's Ryzen architecture (completely different from Intel's), but it's a strong result regardless.

Hardware.info ran benchmarks of a more practical nature:

NB: Gulftown used above is the last iteration of Nehalem in below's charts.
NB: Following charts are from hardware.info. Click the link above for their full article.



The CPUs used in hardware.info testing are:
Nehalem:      Intel Core i7 875K 2.93-3.6GHz, 4 cores
Sandy Bridge: Intel Core i7 2600K 3.4-3.8GHz, 4 cores
Ivy Bridge:   Intel Core i7 3770K 3.5-3.9GHz, 4 cores

Haswell:      Intel Core i7 4790K 4.0-4.4GHz, 4 cores
Broadwell:    Intel Core i7 5775C 3.3-3.7GHz, 4 cores

NB: Gulftown was the last of the Nehalem line.


It should be noted that the biggest jump on their testing also matches the big jump in processor frequency. 

Basically, we ARE getting improvements in each new processor family, but they aren't huge in general. Over time it does add up - in single core performance, the newest chips are maybe 20-40% faster. Multicore increases don't seem to be as dramatic, but they are indeed there. The question is is it worth it to you?

If you should consider going old xeon route for whatever reason - namely you found a cheap motherboard and have access to cheap EC memory, then consider this wiki page listing all xeons.

That said, Ryzen is a pretty solid pick if you have the money for a full setup. I think for an upgrade, the old xeons were pretty solid ;)