Weblog entry #27 for Utumno
I've got a mini-server at home, which I also use as my workstation. Recently I gave a ssh account to one of my friends, who is a mathematics professor. He runs a lot of CPU-intensive tasks. Whole last week my CPU usage was near 100%.
Now, this does not hurt responsiveness of my workstation ( Linux has excellent schedulers!). But, I am a bit concerned about CPU temperature which constantly stays above 55 degrees. (ambient temp also contributes to this- it's 35 degrees here in Taiwan!)
I am wondering if maybe there's a way to limit percentage of CPU power assigned to all tasks run by one user to, let's say, 20% ? So that no matter how many computational tasks he spawns, they will not exceed 20% of CPU usage and thus, hopefully, CPU temperature will stay below 50 degrees? Or better yet, something that will dynamically assign CPU usage to him depending on current temperature?
Or maybe my concern is not justified at all and AMD Athlon 64 3500+ can go on with 55-60 deg core temp for months? Normally it stays around 38 degrees , even with 30 ambient...
Comments on this Entry
if you use a desktop system, you can add the gnome cpu monitor to the panel, and from there you can change the scaling method.
This makes my cpu idle at 25-30 depending on ambient, peaks less than 45 :)
hope this helps
sno
[ Parent | Reply to this comment ]
--
"It's Not Magic, It's Work"
Adam
[ Parent | Reply to this comment ]
[ Send Message | View Utumno's Scratchpad | View Weblogs ]
How would ulimit help here? Here's what I can set with it:
-a All current limits are reported -c The maximum size of core files created -d The maximum size of a process?̨̮&Ati lde;âèÃ&# 131;â ââ¬â 32;¢ data segment -e The maximum scheduling priority (?̨̮Ã&# 131;âÃÂ¥Ã&a circ;áice?? -f The maximum size of files created by the shell -i The maximum number of pending signals -l The maximum size that may be locked into memory -m The maximum resident set size -n The maximum number of open file descriptors -p The pipe size in 512-byte blocks (this may not be set) -q The maximum number of bytes in POSIX message queues -r The maximum rt priority -s The maximum stack size -t The maximum amount of cpu time in seconds -u The maximum number of processes available to a single user -v The maximum amount of virtual memory available to the shell -x The maximum number of file locks
Out of those, only scheduling priority and cpu time are somehow relevant, but neither will help me lower the core temp! I cannot limit his cpu time as that would make the account completely useless for him, and limiting his priority will not lower CPU utilization.
[ Parent | Reply to this comment ]
[ Send Message | View Utumno's Scratchpad | View Weblogs ]
How would ulimit help here? Here's what I can set with it:
-a All current limits are reported -c The maximum size of core files created -d The maximum size of a process? -e The maximum scheduling priority -f The maximum size of files created by the shell -i The maximum number of pending signals -l The maximum size that may be locked into memory -m The maximum resident set size -n The maximum number of open file descriptors -p The pipe size in 512-byte blocks (this may not be set) -q The maximum number of bytes in POSIX message queues -r The maximum rt priority -s The maximum stack size -t The maximum amount of cpu time in seconds -u The maximum number of processes available to a single user -v The maximum amount of virtual memory available to the shell -x The maximum number of file locks
Out of those, only scheduling priority and cpu time are somehow relevant, but neither will help me lower the core temp! I cannot limit his cpu time as that would make the account completely useless for him, and limiting his priority will not lower CPU utilization.
[ Parent | Reply to this comment ]
I would suggest trying OpenVZ as a low-overhead virtualization solution. This would allow you to give your friend his own virtual server to log in to. Then, you can limit the amount of CPU used by that virtual machine, say to 20%. I think this will accomplish what you want.
As a side benefit, he may configure his virtual environment as he likes (if you give him root access) without affecting your main workstation's configurations, and he won't be able to peer into your files or processes from within his virtual machine.
I have started using OpenVZ on Debian Etch, and I am pleased with the results so far.
--
Darren Paul Griffith
www.madphilosopher.ca
[ Parent | Reply to this comment ]