Configuring Siebel Application Object Manager Thread Pooling

To use thread pooling, you set the following parameters on the Siebel Application Object Manager:

  • UseThreadPool equals TRUE (default is FALSE)

  • ThreadAffinity equals FALSE (default is FALSE)

  • MinPoolThreads equals min_number_threads_in_pool (default is 0), where min_number_threads_in_pool represents the minimum number of threads in the Siebel Application Object Manager thread pool.

  • MaxPoolThreads equals MinPoolThreads (default is 0)

Note: You must specify a value for MaxPoolThreads that is equal to or greater than the value of MinPoolThreads.

To determine an appropriate value for MinPoolThreads and MaxPoolThreads, start slowly, monitor system performance, then introduce more multiplexing, as appropriate for your deployment. For example, start with a formula like this (based on two tasks per thread):

MinPoolThreads = MaxPoolThreads = (MaxTasks/MaxMTServers) divided by 2

Subsequently, you can increase this to five tasks per thread, using this formula:

MinPoolThreads = MaxPoolThreads = (MaxTasks/MaxMTServers) divided by 5

For example, if MaxTasks equals 525, and MaxMTServers equals 5, this would be:

MinPoolThreads = MaxPoolThreads = (525 divided by 5) divided by 5 = 105 divided by 
5 = 21

Or, if MaxTasks equals 725, and MaxMTServers equals 5, this would be:

MinPoolThreads = MaxPoolThreads = (725 divided by 5) divided by 5 = 145 divided by 
5 = 29
Note: Adjust values for think time, as necessary. If you cut your think time value in half, then double the number of threads in the pool.