Configuring time-based slot reservation

About this task

Greedy slot reservation is the default slot reservation mechanism and time-based slot reservation is disabled.

Procedure

  1. Use LSB_TIME_RESERVE_NUMJOBS=maximum_reservation_jobs in lsf.conf to enable time-based slot reservation. The value must be a positive integer.

    LSB_TIME_RESERVE_NUMJOBS controls maximum number of jobs using time-based slot reservation. For example, if LSB_TIME_RESERVE_NUMJOBS=4, only the top 4 jobs will get their future allocation information.

  2. Use LSB_TIME_RESERVE_NUMJOBS=1 to allow only the highest priority job to get accurate start time prediction.

    Smaller values are better than larger values because after the first pending job starts, the estimated start time of remaining jobs may be changed. For example, you could configure LSB_TIME_RESERVE_NUMJOBS based on the number of exclusive host partitions or host groups.

Scheduling examples

  1. Job5 requests –n 6 –R “span[ptile=2]”, which will require three hosts with 2 CPUs on each host. As in the greedy slot reservation example, four jobs are running in the cluster: Job1, Job2, Job3 and Job4. Two CPUs are available now, 1 on host A, and 1 on host D:
  2. Job2 finishes, freeing 2 more CPUs for future allocation, 1 on host A, and 1 on host C:

  3. Job4 finishes, freeing 4 more CPUs for future allocation, 2 on host A, and 2 on host C:

  4. Job1 finishes, freeing 2 more CPUs for future allocation, 1 on host C, and 1 host D:

  5. Job5 can now be placed with 2 CPUs on host A, 2 CPUs on host C, and 2 CPUs on host D. The estimated start time is shown as the finish time of Job1: