View information about resource allocation limits

Your job may be pending because some configured resource allocation limit has been reached. Use the blimits command to show the dynamic counters of resource allocation limits configured in Limit sections in lsb.resources. blimits displays the current resource usage to show what limits may be blocking your job.

blimits command

The blimits command displays:

  • Configured limit policy name

  • Users (-u option)

  • Queues (-q option)

  • Hosts (-m option)

  • Project names (-P option)

  • Limits (SLOTS, MEM, TMP, SWP, JOBS)

  • All resource configurations in lsb.resources (-c option). This is the same as bresources with no options.

Resources that have no configured limits or no limit usage are indicated by a dash (-). Limits are displayed in a USED/LIMIT format. For example, if a limit of 10 slots is configured and 3 slots are in use, then blimits displays the limit for SLOTS as 3/10.

If limits MEM, SWP, or TMP are configured as percentages, both the limit and the amount used are displayed in MB. For example, lshosts displays maxmem of 249 MB, and MEM is limited to 10% of available memory. If 10 MB out of 25 MB are used, blimits displays the limit for MEM as 10/25 (10 MB USED from a 25 MB LIMIT). MEM, SWP and TMP can also be configured in other units set in LSF_UNIT_FOR_LIMITS in lsf.conf)

Configured limits and resource usage for built-in resources (slots, mem, tmp, and swp load indices, and number of running and suspended jobs) are displayed as INTERNAL RESOURCE LIMITS separately from custom external resources, which are shown as EXTERNAL RESOURCE LIMITS.

Limits are displayed for both the vertical tabular format and the horizontal format for Limit sections. If a vertical format Limit section has no name, blimits displays NONAMEnnn under the NAME column for these limits, where the unnamed limits are numbered in the order the vertical-format Limit sections appear in the lsb.resources file.

If a resource consumer is configured as all, the limit usage for that consumer is indicated by a dash (-).

PER_HOST slot limits are not displayed. The bhosts commands displays these as MXJ limits.

In MultiCluster, blimits returns the information about all limits in the local cluster.


For the following limit definitions:

Begin Limit
NAME = limit1
USERS = user1
PER_HOST = hostA hostC
TMP = 30%
SWP = 50%
MEM = 10%
End Limit
Begin Limit
NAME = limit_ext1
PER_HOST = all
RESOURCE = ([user1_num,30] [hc_num,20])
End Limit
Begin Limit
NAME = limit2
QUEUES = short
JOBS = 200
End Limit

blimits displays the following:

NAME    USERS     QUEUES    HOSTS             PROJECTS   SLOTS    MEM      TMP      SWP    JOBS
limit1   user1         q2   hostA@cluster1         -       -   10/25        -   10/258       -
limit1   user1         q3   hostA@cluster1         -       -       -   30/2953       -       -
limit1   user1         q4     hostC         -       -       -    40/590       -       -
limit2     -        short      -            -       -       -        -        -  50/200
NAME        USERS   QUEUES   HOSTS               PROJECTS    user1_num    hc_num
limit_ext1      -        -   hostA@cluster1          -           -         1/20
limit_ext1      -        -   hostC@cluster1          -         1/30        1/20
  • In limit policy limit1, user1 submitting jobs to q2, q3, or q4 on hostA or hostC is limited to 30% tmp space, 50% swap space, and 10% available memory. No limits have been reached, so the jobs from user1 should run. For example, on hostA for jobs from q2, 10 MB of memory are used from a 25 MB limit and 10 MB of swap space are used from a 258 MB limit.

  • In limit policy limit_ext1, external resource user1_num is limited to 30 per host and external resource hc_num is limited to 20 per host. Again, no limits have been reached, so the jobs requesting those resources should run.

  • In limit policy limit2, the short queue can have at most 200 running and suspended jobs. 50 jobs are running or suspended against the 200 job limit. The limit has not been reached, so jobs can run in the short queue.