Use scheduler threads to evaluate resource requirement matching

In large-scale clusters with large numbers of hosts, you can enable resource evaluation for hosts concurrently by enabling multithreaded resource evaluation. Set the number of threads the scheduler uses for resource requirement evaluation with the SCHEDULER_THREADS . To set an effective value for this parameter, consider the number of available CPUs on the management host, the number of hosts in the cluster, and the scheduling performance metrics.

Before you begin

Configuring the SCHEDULER_THREADS parameter requires that you first have the LSF_STRICT_RESREQ parameter set to Y in the lsf.conf file.

About this task

This configuration is especially useful for large-scale clusters with numerous hosts. The idea is to evaluate resources for hosts concurrently. For example, there are 6000 hosts in a cluster, so the scheduler may create six threads to complete the evaluation concurrently. Each thread is in charge of 1000 hosts.

Procedure

  1. Edit the lsb.params file.
  2. Specify the value of the SCHEDULER_THREADS parameter to a number between 1 and the number of cores on the management host:

    SCHEDULER_THREADS=number_of_threads

    Setting this parameter to 0 means that the scheduler does not create any threads to evaluate resource requirements. This is the default behavior.