Setting process priority everytime it is launched?
My work computer experiences a lot of slowdown, so I want to do what I can to make sure the stuff I need to be response actually is responsive. For example, I run Pidgin, which loads everytime I boot. How can I tell Windows XP to always set its thread priority to low?
Using the SysInternals utility 'Process Explorer', I can temporarily set the priority - until the next time the application is restarted. How do I effectively make this permanent?
Solution 1:
Option 1
There is Prio. Prio extends the Windows standard TaskManager and adds a "Save priority" option to the "Set Priority" menu.
caveat #1: I used it a while ago (under Win-XP) and it worked fine, but I did not test it extensively.
caveat #2: Reason for deinstalling was licensing because:
Prio - is distributed as freeware for personal use only. This means: All copyrights to Prio are exclusively owned by O&K Software Ltd. The program is free for personal use only. The business license has the cost $19.95 USD.
(quote from their website)
Option 2
I found ProcessTamer which may also help with your problem (maybe even more so). It seems to be freeware - the author just likes you to register for a free license key (otherwise a few nag windows pop up).
Option 3
If you want this only for a few select programs, you can create a batchfile that does not call it directly but indirectly via start
(the Windows command shell built-in) and then use that batchfile (a shortcut to it).
start
can be used with the following options that set the process priority:
- /LOW
- /NORMAL
- /HIGH
- /REALTIME
- /ABOVENORMAL
- /BELOWNORMAL
Solution 2:
Changing the application shortcut to 'start /low [program.exe]' should work for you.
This technically can work for things that don't start automatically. If you want it for a startup program, you can do this to the shortcut and put it into the StartUp folder obviously. If I wanted to run: C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe /command:update /path:"C:\dev_dir" I would have to:
1) Set "Start in" to the folder the actual executing file (TortiseProc.exe in this example) is located so: "C:\Program Files\TortoiseSVN\bin"
2) Set the target to run CMD w/ "/C" to run the string following "/C" then exit, then use that to run START /PRIORITY [executable] [parameters]. In my case, I used the following:
%SystemRoot%\system32\cmd.exe /C start /BELOWNORMAL TortoiseProc.exe /command:update /path:"C:\dev_dir"
%SystemRoot%\system32\cmd.exe Starts the command prompt
/C executes the following code,
start /BELOWNORMAL TortoiseProc.exe /command:update /path:"C:\dev_dir" actually starts the program given that you correctly "Start in" to the directory where the executable is located.
Hopefully that helps somebody.