Time-based SLA examples

A simple deadline goal

The following service class configures an SLA with a simple deadline goal with a half hour time window.

Begin ServiceClass 
NAME = Quadra 
PRIORITY = 20 
GOALS = [DEADLINE  timeWindow (16:15-16:45)]  
DESCRIPTION = short window 
End ServiceClass

Six jobs submitted with a run time of 5 minutes each will use 1 slot for the half hour time window. bsla shows that the deadline can be met:

bsla Quadra
SERVICE CLASS NAME:  Quadra
  -- short window 
PRIORITY:  20 
 
GOAL:  DEADLINE  
ACTIVE WINDOW: (16:15-16:45)  
STATUS:  Active:On time 
ESTIMATED FINISH TIME:  (Wed Jul  2 16:38) 
OPTIMUM NUMBER OF RUNNING JOBS:  1    
 
NJOBS   PEND    RUN     SSUSP   USUSP   FINISH     
 6      5        1        0      0       0

The following illustrates the progress of the SLA to the deadline. The optimum number of running jobs in the service class (nrun) is maintained at a steady rate of 1 job at a time until near the completion of the SLA.

When the finished job curve (nfinished) meets the total number of jobs curve (njobs) the deadline is met. All jobs are finished well ahead of the actual configured deadline, and the goal of the SLA was met.

An overnight run with two service classes

bsla shows the configuration and status of two service classes Qualicum and Comox:

  • Qualicum has a deadline goal with a time window which is active overnight:

    bsla Qualicum
    SERVICE CLASS NAME:  Qualicum 
    PRIORITY:  23 
     
    GOAL:  VELOCITY 8 
    ACTIVE WINDOW: (8:00-18:00)  
    STATUS:  Inactive 
    SLA THROUGHPUT:  0.00 JOBS/CLEAN_PERIOD 
     
    GOAL:  DEADLINE  
    ACTIVE WINDOW: (18:00-8:00)  
    STATUS:  Active:On time 
    ESTIMATED FINISH TIME:  (Thu Jul 10 07:53) 
    OPTIMUM NUMBER OF RUNNING JOBS:  2    
     
    NJOBS   PEND    RUN     SSUSP   USUSP   FINISH     
     280    278      2         0       0        0
    The following illustrates the progress of the deadline SLA Qualicum running 280 jobs overnight with random runtimes until the morning deadline. As with the simple deadline goal example, when the finished job curve (nfinished) meets the total number of jobs curve (njobs) the deadline is met with all jobs completed ahead of the configured deadline.
  • Comox has a velocity goal of 2 concurrently running jobs that is always active:

    bsla Comox
    SERVICE CLASS NAME:  Comox 
    PRIORITY:  20 
     
    GOAL:  VELOCITY 2 
    ACTIVE WINDOW: Always Open  
    STATUS:  Active:On time 
    SLA THROUGHPUT:  2.00 JOBS/CLEAN_PERIOD    
     
    NJOBS   PEND    RUN     SSUSP   USUSP   FINISH   
     100     98        2        0      0       0
    The following illustrates the progress of the velocity SLA Comox running 100 jobs with random runtimes over a 14 hour period.