Skip to main content

windows 7 - Is reducing maximum processor usage in Power Options safe?


My PC has:



  • Core 2 Duo

  • 4GB RAM

  • ATI 5450 Radeon graphics

  • Windows 7 64-bit


I want to reduce maximum CPU usage in Power Options in the Control Panel to avoid overheating. Is this safe, or can reducing the maximum CPU usage damage hardware (hard disk, CPU, etc.)?⠀⠀⠀



Answer



The option in question is not under-clocking; Windows does not manipulate the CPU or motherboard or multipliers or FSB or anything. The option you are inquiring about is simply a factor that is used during task-scheduling.


When processes run, the Windows task-scheduler allocates a specific number of CPU cycles to different processes and switches back and forth to enable preemptive multitasking. Normally, it assigns as many CPU cycles as are available in order to run everything as fast as possible. If there are free cycles, it lets the program run, if not, it puts the process in a queue and checks to see if there is another program which has used up its allotment for the current “quantum” (or “time-slice”) and should be moved to the back of the line.


Not surprisingly, running the CPU at 100% capacity for a while will heat it up, and this can be undesirable. What Windows lets you do is to assign a limit to how much CPU capacity is usable.


In this case, when processes request CPU time, the scheduler works exactly as before, except that it uses the limit specified in its calculations instead of 100%. As a result, there will be CPU cycles that remain unused, which allows the CPU to remain at a lower temperature.


As a simplified and contrived example, imagine that this was the pseudo-code for the scheduling algorithm (with comments marked by ;):


; function to calculate total CPU cycles used by all processes
calc-total-used:
used-total = 0 ; initialize counter to 0
for each program: ; loop through each running process
used-total = used-total + process-used ; add CPU cycles of each process to counter
return used-total as percentage ; convert to percent and return value

; main scheduling control, check if free cycles available
if (calc-total-used < max-percent) ; calc used %, see if less than max allowed
then run program ; if so, run the program
else: ; if not, try to free some up
add program to queue ; if not, add it to the queue
… ; check if any process are out of cycles

Notice how the scheduling calculation uses a max-percent variable instead of hard-coding 100%. This way, if you set it lower than 100%, it will only allow a program to run if the current usage is less than 100%, which of course means that any CPU cycles between max-percent above that will not be used.


Therefore, this option cannot harm the CPU; it is no different than simply not running any programs and just idling the system (you have likely already had your system idling near 0% CPU load many times).


Comments

Popular Posts

Use Google instead of Bing with Windows 10 search

I want to use Google Chrome and Google search instead of Bing when I search in Windows 10. Google Chrome is launched when I click on web, but it's Bing search. (My default search engine on Google and Edge is http://www.google.com ) I haven't found how to configure that. Someone can help me ? Answer There is no way to change the default in Cortana itself but you can redirect it in Chrome. You said that it opens the results in the Chrome browser but it used Bing search right? There's a Chrome extension now that will redirect Bing to Google, DuckDuckGo, or Yahoo , whichever you prefer. More information on that in the second link.

linux - Using an index to make grep faster?

I find myself grepping the same codebase over and over. While it works great, each command takes about 10 seconds, so I am thinking about ways to make it faster. So can grep use some sort of index? I understand an index probably won't help for complicated regexps, but I use mostly very simple patters. Does an indexer exist for this case? EDIT: I know about ctags and the like, but I would like to do full-text search. Answer what about cscope , does this match your shoes? Allows searching code for: all references to a symbol global definitions functions called by a function functions calling a function text string regular expression pattern a file files including a file

How do I transmit a single hexadecimal value serial data in PuTTY using an Alt code?

I am trying to sent a specific hexadecimal value across a serial COM port using PuTTY. Specifically, I want to send the hex codes 9C, B6, FC, and 8B. I have looked up the Alt codes for these and they are 156, 182, 252, and 139 respectively. However, whenever I input the Alt codes, a preceding hex value of C2 is sent before 9C, B6, and 8B so the values that are sent are C2 9C, C2 B6, and C2 8B. The value for FC is changed to C3 FC. Why are these values being placed before the hex value and why is FC being changed altogether? To me, it seems like there is a problem internally converting the Alt code to hex. Is there a way to directly input hex values without using Alt codes in PuTTY? Answer What you're seeing is just ordinary text character set conversion. As far as PuTTY is concerned, you are typing (and reading) text , not raw binary data, therefore it has to convert the text to bytes in whatever configured character set before sending it over the wire. In other words, when y...

linux - CentOs 7.1 - Install Tomcat 8

I am using this tutorial as a setup reference to getting a Tomcat 8 running on CentOs 7.1 , but after typing: [root@localhost tomcat]# sudo systemctl start tomcat I get the error: Job for tomcat.service failed. See 'systemctl status tomcat.service' and 'journalctl -xn' for details. systemctl status tomcat.service prints the following: [root@localhost tomcat]# systemctl status tomcat.service tomcat.service - Apache Tomcat Web Application Container Loaded: loaded (/etc/systemd/system/tomcat.service; disabled) Active: failed (Result: exit-code) since Wed 2015-11-25 16:54:33 CET; 1min 19s ago Process: 45873 ExecStart=/opt/tomcat/bin/startup.sh (code=exited, status=203/EXEC) Nov 25 16:54:33 localhost.localdomain systemd[1]: Starting Apache Tomcat Web Application Container... Nov 25 16:54:33 localhost.localdomain systemd[1]: tomcat.service: control process exited, code=exited status=203 Nov 25 16:54:33 localhost.localdomain systemd[1]: Failed to start Apache Tomcat Web App...