Testing NVIDIA Jetson Nano Developer Kit with and without Fan

A few weeks ago I received NVIDIA Jetson Nano for review together with 52Pi ICE Tower cooling fan which Seeed Studio included in the package, and yesterday I wrote a getting started guide showing how to setup the board, and play with inference samples leveraging the board’s AI capabilities.

I’ll now test the board with the stock heatsink in both 5W and 10W modes, and see if thermal throttling does occur, and then I’ll fit the tower cooling fan to find out if we can extract more performance that way and how much lower the CPU temperature is.

Jetson Nano Stress Tests with Stock Heatsink

Let’s install SBC-Bench testing utility,


check it’s properly installed,


and run it in 5W mode:


The temperature never went over 44.5°C, and no throttling occurred.

tegrastats during 7-zip multi-core test:


Only two Cortex-A57 cores are used even under load, and power consumption is around 3.3 Watts.

Let’s run sbc-bench in 10W mode:


The maximum temperature was 48.5°C, and again no throttling occurred.

If we monitor the system with tegrastats we can see all four cores are used in 10W (MAXN) mode:


tegrastats during 7-zip multi-core benchmark:


The power consumption went up to 4.1 watts.

So just stressing the CPU won’t do. Let’s try the “Raspberry Pi Foundation method” with stress-ng (for CPU)


and glxgears (for GPU):


Both running at the same, and I went to bed… In the morning I could see it was still running and the CPU temperature was around 67C, but the display was off, and since it’s winter, the ambient temperature was around 20°C. So I made sure to disable automatic Screen Lock so that the display does not turn off, and let it run for a few more hours waiting for ambient temperature to rise to around 27ºC since I usually test devices at around 28°C.

tegrastats output after close to 16 hours running the stress test:


We can see all four cores are maxed out to 1428 MHz, CPU temperature is 74°C below the recommended 85°C max, although the AO (always-on) temperature sensor reaches 78.5°C and an IR thermometer reports 74°C, while power consumption is around 6.2 Watts. However, GPU utilization is only 40% @ 230 MHz. So that glxgears program is like a walk in the park for the Pascal GPU, and not stressing it at all.

I can see people running YoloV3 had the GPU clocked at 921 MHz with 99% utilization. Let’s do something more challenging, and run objects detection from an RTSP camera stream:


After a while we can check statistics with tegrastats while running inference on our RTSP Stream with room temperature at 24C:


The GPU is now always running at 921 MHz, but not always at max (99%) utilization, and CPU utilization is not very high. The CPU temperature is now around 77°C, and the AO temperature sensor reports 85°C so we start getting close to the limit. Power consumption is around 7.2 Watts during this test.

That’s still not enough to throttle the system, so let run a CPU stress test as well.


Tegrastats output after one hour at around 22°C ambient temperature:


I finally managed to make the board overheat, and the CPU throttle. Total power consumption is over 10 Watts, CPU utilization is 100%, but we can see the frequency has been lowered to 1224 to 1326 MHz, CPU temperature is 97°C, while the AO sensor shows a very hot 104°C. I’ve let it run a few more hours, and the system is stable but it does run very hot and throttles a little bit.

Jetson Nano OverheatChecking the heatsink temperature with an IR thermometer shows it’s very hot close to 94°C. That’s an extreme test with both CPU and GPU nearly fully utilized at the same time.

Installing 52Pi Tower Cooling Fan

Let’s stop torturing the board, and instead 52Pi Tower Cooling fan for Jetson Nano. After we take out the module from the board we can loosen the four screws holding the stock heatsink in place with the “star” screwdriver provided with the cooling fan.

Remove Heatsink Jetson Nano

Next, we next to placed the thermal pad on top of the NVIDIA processor making sure we removed the plastic film in the process.Jetson Nano Thermal Pad Now we can install 52Pi ICE tower cooling fan using the same four screws and metallic holder.Jetson Nano Install Heatsink

Double-check you’ve installed the fansink in the right position…Jetson Nano Module with Fansink… and finally connect the 4-wire cable to the PWM fan header. Jetson Nano Connect PWM Fan CableWe can now connect everything back, and when we power back the power we’ll see the RGB LED’s lighting the fan in various colors.

Jetson Nano 52Pi-ICE Tower Cooling Fan
Click to Enlarge

The quick start guide tells us to run jetson_clocks after installation. This utility is used to “set static max frequency to CPU, GPU, and EMC clocks” for maximum performance.

Let’s check the status before:


and after:


So all clocks are run at the maximum all the time, and the fan is enabled. It’s fairly quiet.

Let’s see what we’ve got in tegrastats at idle:


Frequencies are indeed maxed out, but utilization is close to zero, and power consumption of the board around 2.2 Watts. The CPU temperature is 32.5°C with room temperature at 22°C.

Running stress tests with a fan

Let’s run the tests again starting with SBC Bench script:


Somehow performance with 7-zip is slightly lower (4,955 vs 5046), but still similar.  The maximum temperature is much lower (35.8°C) against 48.5°C for the stock fan test, but it does not really matter since we are so far below the recommended maximum temperature.

tegrastats during 7-zip multi-core benchmark:


Power consumption is around 4.4 Watts, around 0.3 watts higher than without fan.

CPU stress and lightweight GPU program in two separate terminals:


Again, I happened to leave this test run overnight, and checked the next day before lunch (21°C ambient temperature):


CPU Temperature was 43.5°C (against 74°C with the stock fan), and for reasons I can’t explain, the reported power consumption is also lower (5.4W vs 6.2W).

Let’s stop glxgears, and instead run inference on our RTSP stream while keeping stress-ng running. Tegrastats after two hours and an ambient temperature of 23°C:


We can see there’s no CPU throttling with all four cores running at 1428 MHz, CPU temperature went up to 58°C, AO temperature sensor up to 60°C. What confuses me is the power consumption of 8.8Watts against around 10W when using the stock heatsink.

Conclusion

Jetson Nano Temperature Heatsink vs Fan
Vertical Axis – Temperature in °C

NVIDIA Jetson Nano developer kit will work just fine in most cases with the stock heatsink. But If you’re running continuous inference on a camera stream temperature may be a bit too high especially in higher ambient temperature, and if your workload somehow continuously stresses the CPU and GPU, a fansink will certainly help to make sure performance is constant throughout and may help with the board longevity.

52Pi ICE tower cooling fan provides the cooling you need for $24.90 plus shipping, and it’s nice if you’d like something efficient and pretty with LED’s, but you’d probably be able to achieve similar cooling with a cheaper $9 cooling fan meant to be installed on top of the stock heatsink.

Support CNX Software - Donate via PayPal or become a Patron on Patreon
Advertisements

3
Leave a Reply

avatar
3 Comment threads
0 Thread replies
0 Followers
 
Most reacted comment
Hottest comment thread
3 Comment authors
mayankAntonymRohitreads Recent comment authors
  Subscribe  
newest oldest most voted
Notify of
Rohitreads
Guest
Rohitreads

My guess was around 65-67 through your previous post. Yet 60 with a sbc is really good. Still if considering its winter and result may vary if used outside or under long use & load or different climatic conditions. But a good alternate option indeed.

Antonym
Guest
Antonym

I hate fan noise, apart from the fact that fast moving mechanics are the first item to fail on any electronic system.

mayank
Guest
mayank

hi… thanks for the post. It is clear that you have run jetson nano for several hours continuously.
I want to test OpenCV facial recognition or yolov3 object detection. For how long will I be able to continuously run these algorithms with an ambient temperature of 30 degree Celcius?

Advertisements