Managed to get Linux dual booting on an old but high spec’ed MacBook Pro using rEFInd. This was the second time I had Linux on the same machine and i’m still puzzled why the laptop runs cool to touch in macOS but quite warm in Linux.
I had disabled the discrete AMD Radeon GPU which caused display problems in macOS, via nvram.
$ nvram fa4ce28d-b62f-4c99-9cc3-6815686e30f9:gpu-power-prefs=%01%00%00%00
I’ve also reloaded AMDRadeonX3000.kext on login via the following:
$ sudo kextload /System/Library/Extensions-off/AMDRadeonX3000.kext
High Sierra boots up perfectly with the laptop running relatively cool.
But this was not the same for Linux…
I’ve loaded lm-sensors which shows Linux regularly hitting 80+ Celsius while laptop fans spun at 2000 rpm (default speed). Something wrong there, don’t you think?
BTW, I’m monitoring the temperature of CPU cores and the fan speed using sensors
$ watch -n 1 sensors
I decided something needs to be done to bring up the internal fan speed – looking around found tlp.
tlp stands for TLP (duh!) and can be found in many distribution’s repositories. I used this to change the radeon power profile and dpm states by changing the states from default to low.
From /etc/default/tlp
RADEON_POWER_PROFILE_ON_AC=low
RADEON_POWER_PROFILE_ON_BAT=low
RADEON_DPM_STATE_ON_AC=low
RADEON_DPM_STATE_ON_BAT=low
RADEON_DPM_PERF_LEVEL_ON_AC=low
RADEON_DPM_PERF_LEVEL_ON_BAT=low
Followed by restarting tlp with
$ sudo systemctl restart tlp.service
No change to the internal fan speed of 2000 rpm. 🙁
After some googling, I loaded macfanctld.
Right off the bat, sensors started to show the correct fan speed. By pushing additional load (multiple Youtube and Vimeo channels) on the laptop, I can hear the fans working harder and sensors is showing higher internal fan speed.
But this still hadn’t brought the temperature of the MacBook Pro to macOS level of temperature. I’ll continue to update this once i find out why and how.