Well - I think I've reached the end of my testing. Time to talk numbers...
We know that this system will be constrained by two things: thermals and power. So we have a few testing and optimisation objectives:
- Overclock/undervolt the GPU as much as possible (as this is weaker than the CPU, so it makes sense to clock this up and limit the CPU)
- Check the PSU limit
- Check the radiator limit
- Limit the CPU accordingly to ensure the limits are respected under 100% CPU+GPU artificial load
At stock, the power meter shows an AC draw of 250W. This surprised me, as I thought that the 5800X3D would draw much more. This means that the PSU is well rated for the CPU and GPU combination. Thermally, it was a different story. You could see from my previous post the radiator could not keep up, even with the fans at full speed. So - we have our primary constraint - it is thermal, and we need to reduce thermals as much as possible while maximising performance.
I first looked at applying a good undervolt with PBO/CO in the BIOS, followed by PPT/TDC/EDC tuning. I collected a whole bunch of data, but I've summarised the key points below.
Test Description/Changes | Cinebench R23 | CPU T | PSU T |
Stock BIOS | 13981 | 88 | 57.1 |
XMP -> Profile 1 (Enabled) | 13455 | 86 | |
FCLK 1800MHz -> 1600MHz | 14137 | 87 | |
-30 all core CO | 14606 | 82.2 | |
CPPC Enabled, CPPC Preferred Disabled,
PPT/TDC/EDC 120/75/110 | 14544 | 81.2 | |
100/65/90 | 14179 | 78 | |
100/55/100 | 13774 | 67 | |
100/55/95 (Final) | 13772 | 68 | 51.3 |
OCCT testing with a core cycler showed no crashes at -30 all core, I guess I got lucky with this chip. You can see I had to thermally limit the CPU significantly - however the performance impact was not that much compared to stock, and I got very good thermal reduction. 5800X3D definitely runs hot! I measured the PSU temperatures with a IR gun, got a good reduction there too, but I am unsure how much of this is owed to lower loop temperatures overall.
The CPU testing revealed an issue with the way the water loop is controlled. I have set the approach target at 10C, however if the loop is below 10C and the CPU/GPU experiences a sudden load, then the fans will not ramp until the water temperature is well and truly increasing fast. At this point, the fans cannot ramp fast enough to catch it. If we set the fans to follow CPU/GPU load, then we could end up in a situation where the water is too warm after being loaded, and the fans not maintaining air flow as the processors are not ramped.
So I implemented a bit of a latching function. This will cause the fans to ramp on CPU load, however will follow the water temperature on the way down. Here is how it is set up in aquasuite playground:
Now that the fans work well enough, we can move onto GPU testing.
The first part was to run the card at stock in superposition, check the GPU T and main card voltage, and undervolt/overclock from there.
Initially I just tried to drive the full 1.05V and overclock it, however this introduced crashes and simply didn't work. For my card, I found 743mV was quite nice and solid.
I started with a mem clock of +500MHz. I experienced crashes using the core slider at the end of tests - therefore I went in and started manually setting the curve to ensure that the idle clocks were not affected. Here is the end of the results table (the start is very boring)
Core overclocking results:
GPU parameter/changes | Superposition 4K / OCCT Steady Extreme UnrealEng | GPU T |
Stock | 4345 | 70 |
----lots of other tests---- | | |
+345 peak, undervolt flat line at 756mV | 5044 | 55 |
+360 peak, undervolt flat line at 756mV | 5081 | 56 |
+375 peak, undervolt flat line at 756mV | 5091 / Error OCCT | 55 |
+390 peak, undervolt flat line at 756mV | 5118 / Error OCCT | 55 |
+405 peak, undervolt flat line at 756mV | 5172 / Error OCCT | 55 |
+420 peak, undervolt flat line at 756mV | 5200 / Error OCCT | 54 |
+435 peak, undervolt flat line at 756mV | 5216 / Error OCCT | 53 |
+450 peak, undervolt flat line at 756mV | 5234 / Error OCCT | |
It was clear that 756mV was a little bit unstable, even if it was producing good results and no crashes.
Dropping it to 743mV at +345 peak and +500 MHz passed OCCT with a superposition score of 5074. Memory testing showed scores decreasing after +500MHz memory. Here is my final curve. You can see it gradually increases from idle to ensure idle clocks remain close to stock:
Finally we go for a full artificial load test to see if we need to limit the CPU more...looks like it's all good:
The nice thing is that there are few, if any games with cause full CPU and GPU loads - so the fact that approach is held steady at full fan speed is a good sign. Total radiator power available is 175W with this setup. Power draw from the wall is 205W in full artificial load.
Next up is cleaning up the inside slightly, setting it up as a steam box and moving it to its new home. Will try and post better pics in the next post too!