Tag Archives: Folding@Home Power Consumption

AMD Ryzen 9 3950X Folding@Home Review: Part 3: SMT (Hyperthreading)

Hi all. In my last post, I showed that the AMD Ryzen 9 3950x is quite a good processor for fighting diseases like Cancer, Alzheimer’s, and COVID-19. Folding@Home, the distributed computing project helping researchers understand various diseases, definitely makes good use of the 16 cores / 32 threads on the 3950x.

In this article, I’m taking a look at how virtualized CPU cores (Simultaneous Multithreading in AMD speak or Hyperthreading for you Intel fans) helps computational performance and efficiency when running Folding@Home on a high-end CPU such as the Ryzen 9 3950x.

Instead of regurgitating all of the previous information, here are some links to bring you up to speed if you haven’t read the previous posts.

Socket AM4 Benchmark Machine

AMD Ryzen 9 3950x Review: Part 1 (Overview)

AMD Ryzen 9 3950X Review: Part 2 (Average Results vs. # of Threads)

Test Setup

For this test, I used the same settings as in Part 2, except that I disabled SMT in the BIOS on my motherboard. Thus, Windows 10 will only see the 16 physical CPU cores, and will not be able to run two logical threads per CPU core. As before, I ran all testing using Folding@Home’s V7 client. I set the CPU slot configuration for a thread value of 1-16. At each setting, I ran five work units and averaged the results. Note that AMD’s core performance boost was turned off for all tests, so at all times the processor ran at 3.5 GHz.

Performance

As expected, as you throw more CPU cores at a problem, the computer can chew through the math faster. Thus, more science gets done in a given amount of time. In the case of Folding@Home, this performance is rated in terms of Points Per Day (PPD). The following plot shows the increase in computational performance as a function of # of threads utilized by the solver. Unlike in my previous testing on the 3950x, here an increase of 1 thread corresponds to an increase of 1 engaged CPU core, since virtual threads (SMT / Hyperthreading) are disabled.

The plot below includes the individual samples at each data point as light gray dots, as well as a + / – 2 sigma (95%) confidence interval. This means that 95% of the results for a given thread setting are statistically predicted to fall within the dashed lines.

AMD Ryzen 9 3950x Performance SMT Off

As a side note, certain settings of thread count actually result in the exact same performance, because the Folding@Home client is internally using a different number than the specified value. For example, setting the CPU slot to 5 threads will still result in a 4-thread solve, because the solver is avoiding the numerical issues that occur when trying to stitch the solution together with 5 threads (5 is a tricky prime number to work with numerically). I noted these regions on the plot. If you would like more detail about this, please read the previous part of this review (part 2).

One interesting observation is that the maximum performance occurs with 15 CPU cores enabled, not the complete 16! This is somewhat similar to what was observed in Part 2 of this review (SMT enabled), where 30 threads provided slightly more points than 32 threads. More on that in a moment…

Power Consumption

Using my P3 Kill A Watt Power Meter, I measured the power consumption of the entire computer at the wall. As expected, as you increase the number of CPUs engaged, the instantaneous power consumption goes up. The power numbers reported here are averaged by “the eyeball method”, since the actual instantaneous power goes up and down by a few watts as the computer does its thing. I’d estimate that these numbers are accurate within 5 watts.

AMD Ryzen 9 3950x Power Consumption SMT Off

Efficiency

The ultimate goal of this blog is to find the most efficient settings for computer hardware, so that we can do the most scientific research for a given amount of power consumption. Thus, this next plot is just performance (in PPD) divided by power consumption (in watts). I left off all the work unit variation and confidence interval lines, since it looks about the same as the performance plot, and it’s cleaner with just the one average line.

AMD Ryzen 9 3950x Efficiency SMT Off

As with performance, setting Folding@Home to use 15 CPUs instead of the full 16 is surprisingly the best option for efficiency. The difference is pretty profound here, as the processor used more power at 16 threads than at 15 threads while producing less points at 16 threads than at 15.

Comparison to Hyperthreaded Results

To get a better idea of what’s going on, here are the same three plots again with the average results overlaid on the previous results from when SMT was enabled. Of course the SMT results go up to 32 threads, since with virtual cores enabled, the 16-core Ryzen 9 3950x can support 32 total threads.

AMD Ryzen 9 3950x Performance SMT Off vs On

AMD Ryzen 9 3950X Performance: SMT Study

AMD Ryzen 9 3950x Power SMT Off vs On

AMD Ryzen 9 3950X Power Consumption: SMT Study

AMD Ryzen 9 3950x Efficiency SMT Off vs On

AMD Ryzen 9 3950X Efficiency: SMT Study

Conclusion

Disabling SMT (aka Hyperthreading) essentially limits the Ryzen 9 3950x to a maximum thread count of 16 (one thread per physical core). The results from 1-16 threads are very similar to those results obtained with SMT enabled. Due to work unit variation, the performance and efficiency plots show what I would say is effectively the same result with SMT on vs. off, up to 16 threads. One thing to note was that the power consumption in the 12-16 thread range did trend higher for the SMT off case, although the offset was small (about 5-10 watts). This is likely due to Windows scheduling work to a new physical core to handle the higher thread count when SMT is disabled, as opposed to virtualizing the work onto an already-running core using SMT. Ultimately, this slightly higher power consumption didn’t have a noticeable effect on the efficiency plot.

The big takeaway is that for thread counts above 16 (the physical core count), the Ryzen 9 3950x can utilize thread virtualization very well. The logical processors that Windows sees don’t work quite as well as true physical cores (hence the decrease in slope on the performance and efficiency plots above 16 CPUs). However, when the thread count is doubled, SMT still does allow the processor to eek out an extra 100K PPD (about 33% more) and run more efficiently than when it is limited to scheduling work to physical CPUs.

Pro Tip #1: Turn on Hyperthreading / SMT and run with high core counts to get the most out of Folding@Home!

The final observation worth noting is that in both cases, setting the F@H client to use the maximum available number of threads (16 for SMT off, 32 for SMT on) is not the fastest or most efficient setting. Backing the physical core count down to 15 (and, similarly, the SMT core count down to 30) results in the fastest and most efficient solver performance.

My theory is that by leaving one physical core free (one physical core = 2 threads with SMT on), the computer has enough spare capacity to run all the crap that Windows 10 does in the background. Thus, there is less competition for CPU resources, and everything just works better. The computer is also easier to use for other tasks when you don’t fully max out the CPU core count. This is also especially valuable for those people also trying to fold on a GPU while CPU folding (more on that in the next article).

Pro Tip #2: For high core count CPUs, don’t fold at 100% of your processor’s core capacity. Go right to the limit, and then back it off by a core.

Since you’re using SMT / Hyperthreading due to Pro Tip #1, this means setting the CPUs box in the client to 2 less than the maximum allowed. On my 16-core, 32-thread Ryzen 9 3950x, this means CPUs = 32 (theoretical max) – 2 (2 threads per core) = 30

CPU Slot Config

This result will be different on CPUs with different numbers of cores, so YMMV…I always recommend testing out your individual processor. For lower core count processors such as Intel’s quad core Q6600, running with the maximum number of cores offers the best performance. I previously showed this here.

Future Work

In the next article, I’m going to kick off folding on the GPU, an Nvidia GeForce 1650, which I previously tested by its lonesome here. In a CPU + GPU folding configuration, it’s important to make sure the CPU has enough resources free to “feed” the GPU, or else points will suffer.

I’ve also started re-running the thread tests with Core Performance Boost enabled. This allows the processor to scale up in frequency automatically based on the power and thermal headroom. This should significantly change the character of the SMT On and SMT Off plots, since everything up till now has been run at the stock speed of 3.5 GHz.

Support My Blog (please!)

If you are interested in measuring the power consumption of your own computer (or any device), please consider purchasing a P3 Kill A Watt Power Meter from Amazon. You’ll be surprised what a $35 investment in a watt meter can tell you about your home’s power usage, and if you make a few changes based on what you learn you will save money every year! Using this link won’t cost you anything extra, but will provide me with a small percentage of the sale to support the site hosting fees of GreenFolding@Home.

If you enjoyed this article, perhaps you are in the market for an AMD Ryzen 9 3950x or similar Ryzen processor. If so, please consider using one of the links below to buy one from Amazon. Thanks for reading!

AMD Ryzen 9 3950x Direct Link

AMD Ryzen (Amazon Search)

Advertisement

Ultra-Low Power Consumption Computer Tested – 25 Watt AMD Athlon 5350 Quad-Core APU!

When it comes to the web server and file hosting world, where computers run 24/7, power consumption is often the leading concern when selecting hardware. The same is often true for low-load applications, such as HTPCs, where power and heat are at odds with a silent, inexpensive machine. For these machines, which might see an occasional spike in load but typically sit in a near-idle state, a low idle power consumption is key.

The place where lower power components are not as valuable is the high performance computing world. Here, the goal shouldn’t be isn’t the absolute lowest power consumed, but the lowest power required to do a unit of work.

Flipping this around, the goal is to maximize the amount of computational work done per unit of power. This is computational efficiency.

Computational Efficiency on Super Low-Power Computers

Most of the reviews on this blog have been on rather expensive, high-powered hardware. By this I mean big honking graphics cards running on 8-core machines with 16 GB of ram. I’ve even tested dual-CPU servers with 64 GB of ram, like the dual AMD Opteron workstation below:

Dual Opteron RIG

Dual Opteron 4184 12-Core Server – 64 GB Ram

In this article, I’m going in the other direction. I’ll be testing a little teeny-weenie computer, to see just how well an ultra-low power consumption computer does in terms of computational efficiency.

The Machine

Four years ago, AMD did something that some people thought was silly. They released a socketed version of one of their ultra low-power processors. This meant that instead of being constrained with a tiny integrated device like chromebook, people could actually build an upgradable desktop with a drop-in CPU. Well, APU, actually, since AMD included the graphics on the chip.

That processor was the Kabini architecture APU. Built on a 28 nm process, it went along with a new socket (AM1).  There is a really good overview of this here:

https://www.anandtech.com/show/7933/the-desktop-kabini-review-part-1-athlon-5350-am1

I won’t go into too much detail, other than to point out that the flagship chip, the Athlon 5370, was a quad-core, 2.2 Ghz APU with 128 Radeon graphics cores, and an amazing Thermal Design Power of just 25 watts! In a time when the most energy efficient dual and quad-core processors were hovering around 45-65 Watt TDP, this chip was surprising. And, it eliminated the need for a discrete graphics card. And all for $60 bucks!

So, I got my hands on one (not the 5370, but the slightly slower 2.05 Ghz 5350). The prices are a bit inflated now (some nutters want up to 300 dollars for these little guys on eBay, although if you are lucky you can get a deal). For example, this isn’t the one I bought, but it’s a pretty nice combo (board, ram, and CPU) for $72 dollars.

AM1 Build Deal

AMD 25 Watt Quad Core Deal!

Since the goal was to make a machine with the absolute lowest system power consumption, I got a Gigabyte GA-AM1M-S2H microATX board and two sticks of DDR3L (1.35 volt) energy efficient memory. The hard drive is an old, slow, single-platter (I think) Hitachi 80 GB unit, which seems to offer passable performance without the same power consumption as larger multi-platter drives. I used a Seasonic Focus 80+ Platinum 550 watt power supply, which is one of the most energy efficient PSUs available (I went with this vs. a Pico PSU because I wanted the ability to add a big graphics card later). I put 4 80mm case fans on a controller so I can take them right out of the equation.

Here’s pictures of the build. All the stickers make it faster…and external case fans are the bomb (put them on there for my kids to play with).

Defiant_Build

Low Power Consumption Build. Codename: Defiant

After a bit of fussing around, I was able to get the machine up and running with Linux Mint 19.1. Using my P3 Kill A Watt Meter, I measured a system idle power consumption of about 23 watts with the case fans off and 28 watts with the case fans on. That’s less than half of an incandescent light bulb!

Folding@Home Performance

I downloaded the latest V7 Folding@Home client for Linux and enabled 4-core CPU folding (I also set the computer up with a passkey to earn the quick return bonus points). I let it run for a month to make sure everything was stable. Here are the results from the latest week of CPU folding:

AMD APU PPD

AMD Athlon 5350 Folding@Home Production

As you can see, the machine is not fast enough to always return a work unit every day. However, using a 10-day average, the Points Per Day production is 1991.4 PPD. This is in the ballpark of what was reported by the client.

Power consumption when folding was 35 watts (30 with case fans off…with a system this small, the fan power consumption is a significant percentage). I thought it would have been a bit higher, but then again, power supplies are not very efficient at super low loads, and this machine’s mid 20-watt idle consumption is way, way less than what the Seasonic 550-watt PSU is designed for. As the power consumption comes up out of the ultra-low region, the PSU efficiency increases. So, throwing a full 25 Watt TDP of CPU folding at the equation resulted in only a net 10 watt increase in power consumption at the wall.

In short, running full-tilt, this little computer only uses 35 watts of power! That’s incredible! In terms of efficiency, the PPD/Watt is 1991.4/35 = 56.9

The following plots show how this stacks up to other hardware configurations. On the wattage plot, I noted which test machine was used.

 

AMD Athlon 5350 (25 Watt TDP Quad Core APU) Folding@Home Results

AMD Athlon 5350 PPD Comparison

The Athlon 5350 is not very fast…all the other processors do more science per day, and the graphics cards do a lot more!

AMD APU Efficiency Comparison

The Athlon 5350 is also not very efficient. Even though its power consumption is low, it does not produce much science for the power that it draws. It is, interestingly, more efficient than an old Intel Q6600 quad core.

AMD APU Watt Comparison

The Athlon 5350 is an extremely low-power CPU. The desktop build here draws less power than anything I’ve tested, including my laptop!

Conclusion

Super low-power consumption computers, such as one based on the 25-watt quad-core Athlon 5350, are good at (you guessed it) drawing almost no power from the wall. I was able to build a desktop machine that, when running full tilt, uses the same amount of power as three LED light bulbs (or half of one standard incandescent light bulb). It even uses less power than my laptop (and my laptop is tiny!). That’s pretty cool.

Sadly, that’s where the coolness end. If your goal is to do tons of computation, low-power PC parts won’t help (dur!). In the case of supporting disease research for Stanford University’s Folding@Home distributed computing project, the Athlon 5350 test system got spanked by everything else I’ve tested, including my 10-year-old Inspiron 1545 laptop. Worse, despite its ultra low power consumption, the sheer lack of performance kills the efficiency of this machine.

As a side note, I have been overwhelmingly pleased with the computer as a HTPC. It is quiet, uses almost no electricity, and is actually pretty quick at multi-tasking in Linux Mint’s desktop environment, thanks to the 4 CPU cores. This build also offers me the chance to test something else…namely pushing the efficiency of graphics card folding. By reducing the background system power consumption to an incredibly low level, the whole-system efficiency of a folding computer can be increased. All I have to do next is give this little computer some teeth…in the form of a big graphics card! So, it sounds like I’ll have to do another article….stay tuned!