Author Topic: Cpu fans ramping up when denoising  (Read 3125 times)

2019-05-08, 10:40:28

jamesdowling

  • Active Users
  • **
  • Posts: 100
    • View Profile
    • Atmos Visuals
I was wondering if anyone here could help me out with a fan issue I'm having. Whenever I stop a render and it starts denoising the CPU fans kicks up for about 3 seconds, the same happens when in interactive rendering. I have 2 fans on it CPU cooler both running at 50% speed, which is pretty quite but when this occurs they both ramp up to 100%.

I have been trying to tweak bios settings etc ( latest bios 7B92v13 ) but I can seem to get it to stop. Normally it wouldn't bother me but I share a work space so its not ideal having a jet take off in the room every 10 Min's :)

I have a 2990wx, msi x399 meg creation,Thermalright silverarrow tr4. Sits at around 3.2ghz/ 60 degrees on an overnight render maxing out the PPT limit of 265w. Just wanted to check there is not some setting that anyone knows of in the Bios? or if its just a case of dropping the PPT limit?

Thanks!
« Last Edit: 2019-05-08, 10:57:48 by jamesdowling »

2019-05-08, 11:11:37
Reply #1

FrostKiwi

  • Active Users
  • **
  • Posts: 686
    • View Profile
    • YouTube
I was wondering if anyone here could help me out with a fan issue I'm having.
You want a smooth Fan curve and often the BIOS settings are beyond bad for that. Fan control in the BIOS is always limited. Although according to this post you have in your MSI Bios more advanced settings, MSI provides a companion APP, the MSI Command Center, where you can set a proper fan curve, which you can download here. Personally I recommend SpeedFan for that, as it is the pinnacle of Fan control software both in it's lightweight nature and detailed control. Unfortunately younger Motherboards changed the way they do FanControl and SpeedFan, which is not in active development does not detect the fan controls, but you can give it a try. Sadly you don't get direct access to fans anymore, a regression from previous generations of Motherboards. I'm sad to have to chose between the Heavyweight Asus AI Suite and proper fan control that doesn't suck on my workstation. All these new softwares STILL can't do exponential fan curves, like SpeedFan does for so long... Locking fan control behind OEM Software is such a disaster....

As for why specifically Denoise makes heat and thus heavy noise...
As stated in the CPU FAQ Thread, Denoise created something of a perfect stresstest.
Why is my CPU temperature higher/fan louder during the denoising compared to the rendering?
The memory access pattern of the rendering code is very random - for example, each ray may hit a completely different object. This makes it very hard for the CPU to predict which parts of the memory will be accessed next, and in the end the CPU ends up waiting for data to be fetched from memory most of the time.
 
When the image is denoised, it is accessed sequentially one pixel at a time. Also the processing of each pixel takes long enough so that the CPU is able to read the next pixel from memory before it is needed. This is a best case scenario for the CPU - it does not have to wait for memory, and the execution units are (almost) fully utilized.
 
When the execution units sit idle waiting for memory, the CPU is able to optimize its energy consumption (and therefore heat generation), but when the denoising kicks in, the CPU units are kept busy all the time and so the temperature goes up.
Also it's heavy on the FPU, which is a nice heater element for the colder months.
actually the rendering itself is much more ALU/general instructions heavy than denoising, denoising is hardcore FPU stuff. I think it has more to do with the fact that there are no cache misses and branch mispredictions in denoising, since the workload is fairly simple and predictable. CPU does not have to wait for pipeline to repopulate after branch misprediction, or for data to be loaded from RAM, so the FPUs are utilized much better.
I'm 🐥 not 🥝, pls don't eat me ( ;  ;   )

2019-05-08, 11:41:52
Reply #2

jamesdowling

  • Active Users
  • **
  • Posts: 100
    • View Profile
    • Atmos Visuals
Thanks SairesArt,

I just did a test and went down to 250w with the fans full speed and it seems to be correct what said about the denoising being more CPU intensive.

While rendering temps sit at 55 degrees but when I stop the render and the denoising starts it jumps up to 64. The temp spike seems strange though because task manager/ryzen master says CPU utilization is at 100% during all stages of rendering. I guess when I was getting to the denoise before it was going over the temp limit in Ryzen master and just kicking up all the fans to 100% to protect itself.

I will try out the fan curves in the control centre and lower the PPT wattage to take into account the temp spike that happens.

Thanks again! that helped a lot :)

2019-05-08, 12:28:01
Reply #3

FrostKiwi

  • Active Users
  • **
  • Posts: 686
    • View Profile
    • YouTube
CPU utilization is at 100% during all stages of rendering.
[OTrant]
The longer I work as a programmer, the more I get to understand that ultimately none of these metrics say anything meaningful.

Without Hardware debugging you can't look inside the CPU and 100% usage is ultimately meaningless.
I wrote code that used one thread to move memory, 25% util on my 4 core laptop and it made the whole system chug like hell. TaskManager said everything is fine, my mouse cursor stuttering at sub 30fps said other wise.  There is no such straightforward thing as "Utilization of Memory performance".

RAM usage being the next barely properly reported stat, as there are many definitions on what constitutes RAM usage. When Vista came out the task manager showed how it used the RAM to cache stuff to showcase their improvements in memory management and it made people flip out, as Windows Vista constantly reported 90% RAM usage. Microsoft never did this again, now it's a hidden stat.
There is a great article called "Why I don't use Task Manager for Memory Metrics", which goes into detail about how to read a program's RAM usage.

And my current journey of figuring this stuff out is on address space vs RAM. If you don't command stuff explicitly it's all a black box when a file get's memory mapped, lands in RAM and how long it actually stays in RAM.
[/OTrant]
I'm 🐥 not 🥝, pls don't eat me ( ;  ;   )