You are on page 1of 3

ThreadMaster ThreadMaster Monitors Threads and handle high CPU utilization on a per application basis.

This function is primarily indented for Terminal servers hosting multiple users. A single user is capable of hogging all of the processor resources. The result will be a reduction in the quality of service experienced by all other users on the server. ThreadMaster can help you to deal whit this situation. ThreadMaster monitors all running applications, and detects when a application starts to use excessive processor resources. It dynamically hunt down the offending thread, and clamp the CPU for this thread. This feature ensures that other users can remain working without noticing anything. The clamped process will eventually finish, and the clamp will be removed automatically. Remember: 20 applications, each having a CPU utilization of 5 % still adds 100%. up to

Administration of ThreadMaster is extremely simple, the behavior is in general controlled by only two key parameters. The first parameter instructs ThreadMaster to monitor application activity over a time period. The second parameter is the allowed maximum CPU utilization for the process over the given time. Configuration ThreadMaster has no GUI interface, all configuration is done by using a well known tool "Regedit". Changing registry keys not described in this section, may cause serious problems. Use Registry Editor at your own risk. After any changes in the configuration please restart the ThreadMaster service for the changes to come to effect. All the default values in ThreadMaster is based on 2 CPU Compaq server, but can be used on any configuration. ThreadMaster can by default handle 12287 simultaneous process running on the server. [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ThreadMaster\Parameters] CPUThresholdPct setting defined in CPU load threshold per application. This is a global and affect all applications, unless other settings are

the "Application" or "Exceptions" sections. Default: 15%, Valid range 3 - 100. MainSampleTime Time in seconds for application load above

"CPUThresholdPct" for This value define the measurement time ThreadMaster using calculating the average CPU utilization for applications. Default: 30 sec. Valid range 10 - 100+. ThreadOverloadActionStart Command to execute at action start. Default :none ThreadOverloadActionStop Command to execute at action stopping. See the sample files "Threadloginstall.reg" and "ThreadLog.cmd" These files may be edited for your own usage. Default: none

A list of special applications and the allowed CPU load. Only applications different from the general rule defined by "CPUThresholdPct" . Applications running as a single published application, in many instances, can profit by setting the applicationkey as low as 5%. The list is only enumerated when Threadmaster starts. MPORTANT: In multithreaded applications with multiple CPU incentive threads, don't set this value below the current number of CPU incentive threads, this may cause the application to "hang", or run extremely slow. [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ThreadMaster\Parameters\Appl ications] appimagenameA n Application image name and max. load threshold pct. (n) appimagenameB m Valid Range 1 - 100 ... appimagenameX x

A list of applications not handled. Make sure all vital and basis system processes are listed here, otherwise the system may not work properly. Do not take it for granted that antivirus programs etc. are vital, in this sense. The list is only enumerated when Threadmaster starts. [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ThreadMaster\Parameters\Exce ptions] imagenameA imagenameB

... imagenameX

Statistics is updated by ThreadMaster, this section documents the work of ThreadMaster. [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ThreadMaster\Statistics] Count\ Number of times a image is handled imagenameX ... Time\ The total handling time for a image imagenameX ...

Files Description ----------------------------------------------------------------------------------Readme.txt This File License.txt License file Install.cmd Install ThreadMaster service ThreadMast.exe Threadmaser service Threadloginstall.reg Install logging of actions, Optional File, build by install.cmd ThreadLog.cmd The log recorder, Optional File ThreadSaveLog.cmd A "at" job handling the size of the logfile, Optional File -----------------------------------------------------------------------------------Have fun Soren M. Pedersen