The Raspberry Pi 4 is a great upgrade from the previous Rpi 3. It even performs (surprisingly well) object and facial recognition with the Tensorflow Lite framework (1-2.5 fps) or OpenCV library (1.5 - 8 fps) and PiCamera.
During my first applications of Tensorflow Lite and OpenCV for facial recognition with my Raspberry 4 I realized that long term usage would be quite critical due to temperature issues of the CPU.
Without any cooling device (passive/active): Under normal working load the CPU temperature averages 50 - 60 °C . In case you do CPU intensive duties the temperature rises fast and may lead to performance reduction due to protection measures...
Hence, I decided to perform a passive cooling comparison without / with heatsink and thermal compound with respect to facial recognition.
Set-Up:
Raspberry Pi 4 Model B Rev1.1
NoIR Camera (5MP w/ 1080p)
Aluminium Heat Sinks
Thermal Compound
BLE Temp & Humidity Sensor
Face recognition with OpenCV, Python, and deep learning
Own scripts to log CPU temperature, CPU load average and ambient temperature + humidity via BLE
Test 1: No Heat Sink
Max CPU Temp: 84 °C
Average CPU Temp while facial recognition is running: 81.5 - 82.5 °C
Max load average 1: 5.92
Ambient Temperature (room): 23.1 - 23.6 °C
The following figures show CPU Temperature & load averages respectively ambient temperature & humidity over time:
Test 2: With Heat Sink and Thermal Compound
Max CPU Temp: 83 °C
Average CPU Temp while facial recognition is running: 81 - 82 °C
Max load average 1: 4.35
Ambient Temperature (room): 24.1 - 24.3 °C
The following figures show CPU Temperature & load averages respectively ambient temperature & humidity over time: (Actually this graph is neater because there are no interruptions)
Conclusion
Test 2 with aluminium heat sinks and a special thermal compound resulted in a CPU temperature decrease of 1 - 1.5 °C (if you take into account the higher ambient temperature during Test 2, a decrease of like 2 °C). Frankly, I expected a temperature decrease of 3 - 4 °C. On the other hand, load average 1 of Test 2 is way below load average 1 of Test 1. In the near future I will get some cooling fans and add the results to this post.
Questions:
- Why is load average 1 deviating between Test 1 and 2?
- Are copper heat sinks the better choice?
If you have any questions, feel free to contact me.
Best regards,
Ruben