Wilco van Bragt - LinkeIn Wilco van Bragt - Twitter rssa 

Threadmaster

Threadmaster is a tool which is a CPU clamping tool (just like Appsense Performance Manager) developed by Soren M. Pedersen. The main difference is that this tool is freeware. This advantage is also a big advantage, because there is no official support and usage of this tool is at own risk. The experiences we heard out of the field are very positive, but it's always the big question that  you or the customer want this kind of tool on a production environment.

Installation

The installation of threadmaster is very easy. Actually the install.cmd just copies the executable (threadmast.exe) to the installation directory and then runs this executable with the install switch (%zInstDir%\ThreadMast -install).

Image

Configuration

Threadmaster had no GUI interface to configure the behavior of Threadmaster. All settings are set-up with registry keys. All these keys are described in the included readme.txt and the website. With this setting can you set the threshold of CPU load, the time Threadmaster need to clamp the thread, separate settings for  special applications and executables which should not be clamped by Threadmaster. Below an example registry export.

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ThreadMaster\Parameters]
"CPUThresholdPct"="10"
"MainSampleTime"="30"
"ThreadOverloadActionStart"=""
"ThreadOverloadActionStop"=""

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ThreadMaster\Parameters\Applications]
"mfadmin.exe"="5"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ThreadMaster\Parameters\Exceptions]
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ThreadMaster\Parameters]
"CPUThresholdPct"="10"
"MainSampleTime"="30"
"ThreadOverloadActionStart"=""
"ThreadOverloadActionStop"=""

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ThreadMaster\Parameters\Applications]
"mfadmin.exe"="5"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ThreadMaster\Parameters\Exceptions]
"aclient.exe"=""
"agentsvc.exe"=""
"agentsvr.exe"=""
"cdmsvc.exe"=""
"cmd.exe"=""
"csrss.exe"=""
"ctxxmlss.exe"=""
"dfssvc.exe"=""
"encsvc.exe"=""
"frameworkservic"=""
"imasrv.exe"=""
"llssrv.exe"=""
"lsass.exe"=""
"mcshield.exe"=""
"mfcom.exe"=""
"msdtc.exe"=""
"mstask.exe"=""
"naprdmgr.exe"=""
"pnsvc.exe"=""
"regsvc.exe"=""
"rtsserv.exe"=""
"services.exe"=""
"SPOOLSV.EXE"=""
"surveyor.exe"=""
"svchost.exe"=""
"sysdown.exe"=""
"System"=""
"SystemProcess"=""
"tcpsvcs.exe"=""
"termsrv.exe"=""
"vcagent.exe"=""
"vstskmgr.exe"=""
"winlogon.exe=""
"winmgmt.exe"=""
"proflwiz.exe"=""


Management

As described before Threadmaster had no GUI interface, so management is not that easy. It's possible to log all kind of events by Threadmaster in a log file.
You should sift out the useful information out of this log file. It's easy to check that Threadmaster works. Just starts a CPU extensively program and you will see that in configured time the thread will be clamped.

User experience




This kind of tools are developed to do not disturb the user experience. Threadmaster does were it is build for, so users don't notice the intervention of Threadmaster because no messages are generated to inform the user. There's just one point Threadmaster miscalculates. It only watches threads only for the configured CPU threshold, so if this value is 15% and there are 10 threads taking all 10% all the CPU resources are exhausted.

Conclusion

Threadmaster is an impressive product for "just" a freeware tool. As mentioned before the experiences are pretty good and i am also impressed by the   functioning of the product. Although it has not all functionality Appsense Performance Manager, it is a wonderful toy. Technically there is just one disadvantage (just watching the threads and not the total CPU usage), which can be solved with a very low threshold. Using this tool depends completely of the customer of your company to allow a freeware tool with no support on a production environment.

Threadmaster