MK Dynamics

Raspberry Pi 3 Supercomputer - Watercooled Heatsink Analysis and Design

Watercooled Heatsink Analysis and Design

In what follows, we will analyze the thermal characteristics of the Raspberry Pi 3 and design an appropriate water cooling system for the supercomputer cluster. We will try to calculate the thermal impedance of the Raspberry Pi 3's CPU chip, since vendor supplied datasheets are not available. We use data gathered from various sources on the Internet. We will then use these calculations to estimate the required parameters of our water cooling system.

Calculation of the Raspberry Pi 3's CPU Thermal Impedance

We attempt to calculate the thermal impedance of the Raspberry Pi 3's CPU chip. The calculations are based on thermal and power usage data available from the Internet.

From these calculations, it appears that the Junction to Ambient Thermal Impedance of the CPU chip is about 32 C/W. This means that for every watt of power consumption by the CPU, it's temperature will rise by 32 degrees C. This gives us an idea of how much heatsinking is required to maintain the temperature below the throttling temperature of 85C.

Under heavy load, the Raspberry Pi 3 is consumping 3.9W. We shall assume all of this is consumed by the CPU, although some it is actually consumed in the RAM, communications controller chip and other components. According to our thermal impedance calculation, this power consumption will result in a temperature rise of 3.9W x 32 C/W = 124.8C. Of this, the portion of the temperature rise attributable from Junction to Case is 3.9W x 17.01 C/W = 66.3C. If we wish to stay under 75C, then we are allowing only a 75C - 66.3C = 8.7C temperature rise.

Therefore, our heatsink must have sufficient cooling capacity to have a temperature rise of only 8.7C while dissipating 3.9W, or a thermal impedance of 2.2C/W. All of these calculations are accurate to the nearest tenth of a degree Celcius. These calculations are formalized in the next section.

From the above calculations, we can observe that the required heatsink thermal impedance is about 2.2C/W. This can be accomplished with a forced-air + finned heatsink. Water-cooling can achieve much lower thermal impedances, in the range of 0.1C/W to 0.01C/W and lower. We can apply a generous amount of engineering margin of a factor of 10, to account for build variances and other factors affecting cooling performance, and require that the heatsink has a thermal impedance of 0.2C/W. This falls perfectly into the realm of water-cooling.

Calculation of the Design Requirements of the Liquid-Cooled Heatsink for the Raspberry Pi 3 Supercomputer

We make reference to the following article for our calculations:

Based on these calculations, with a typical water cooling system we can expect an 11 deg C rise in the CPU temperature when all four cores are working at maximum. This is for 1 Raspberry Pi 3. We expect that as the number of Raspberry Pi 3's increases, the CPU's of all of the members of the cluster will rise linearly. Our strategy is to thererfore estimate a maximum number of Raspberry Pi 3's we want in our cluster and adjust the water and air flow rates in our cooling system. From thermodynamics, the greatest cooling effect occurs during a maximum temperature differetial, and this can be achieved by increasing the cooling fluid's flow rate.

In the next section, we will run these calculations with a supercomputer cluster consisting of 10 Raspberry Pi 3's, and adjust the fluid flow rates until each CPU's temperature stays below our target.