cpufreqd

My laptop got too hot, and shut down — very inconvenient for a student to lose data, so I spent a little time figuring out how to solve the problem. (I run Debian GNU-Linux) on a Toshiba laptop (Satellite A115) which has an amd-64 x2 (tk-55) processor running at 1800, 1600, and 800mhz.

I installed something called cpufreqd after first trying to write a bash-script and realizing that there had to be a better solution. I found that cpufreqd allowed me to to dynamically set the ondemand governor, changing the maximum speed according to temperature. This is exactly what I wanted. I set it up to run the ondemand governor unrestricted until the CPU reaches 60°C, then cap the speed at 1600, cap the speed at 800 if it passes 70°c, and if it gets to 85°c suspend to ram. What follows is my /etc/cpufreqd.conf file:

[General]
pidfile=/var/run/cpufreqd.pid
poll_interval=37
verbosity=4
#enable_remote=1
#remote_group=root
[/General]

[Profile]
name=High
minfreq=0%
maxfreq=100%
policy=ondemand
[/Profile]

[Profile]
name=Medium
minfreq=0%
maxfreq=90%
policy=ondemand
[/Profile]

[Profile]
name=Low
minfreq=0%
maxfreq=50%
policy=ondemand
[/Profile]

# CPU Temp adjustments
[Rule]
name=CPU Hot
acpi_temperature=70-84
profile=Low
[/Rule]

[Rule]
name=CPU Warm
acpi_temperature=60-69
profile=Medium
[/Rule]

[Rule]
name=CPU cool
acpi_temperature=0-59
profile=High
[/Rule]

[Rule]
name=CPU very hot!
acpi_temperature=85-120
profile=Low
exec_post=pm-suspend
[/Rule]

I don’t know if this is helpful, but if anyone else uses linux, and has trouble with overheating this might be a solution.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s