Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
abstract:farber:runjobs:queues [2018-05-24 09:46] – [The job queues on Farber] sraskar | abstract:farber:runjobs:queues [2018-10-08 16:01] (current) – anita | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ===== The job queues on Farber ===== | + | ====== The job queues on Farber |
Each investing-entity on a cluster an //owner queue// that exclusively use the investing-entity' | Each investing-entity on a cluster an //owner queue// that exclusively use the investing-entity' | ||
Line 27: | Line 27: | ||
In addition to the required run-time limit, the standby queues differ by how many jobs each user can be concurrently running. | In addition to the required run-time limit, the standby queues differ by how many jobs each user can be concurrently running. | ||
</ | </ | ||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
===== Farber " | ===== Farber " | ||
Line 49: | Line 42: | ||
</ | </ | ||
- | ====Grid Engine resources governing these queues==== | + | ==== Grid Engine resources governing these queues ==== |
The " | The " | ||
Line 79: | Line 72: | ||
==== Mapping jobs to nodes ==== | ==== Mapping jobs to nodes ==== | ||
+ | |||
Once Grid Engine determines the appropriate standby queue, it maps the job to available, idle, nodes (hosts) to fill all the slots. For openmpi jobs, Grid Engine is configured to use the //fill up// allocation rule, by default. | Once Grid Engine determines the appropriate standby queue, it maps the job to available, idle, nodes (hosts) to fill all the slots. For openmpi jobs, Grid Engine is configured to use the //fill up// allocation rule, by default. | ||
Line 118: | Line 112: | ||
</ | </ | ||
- | + | ==== Actions at the run-time limit ===== | |
- | + | ||
- | ====== Farber Exclusive access ====== | + | |
- | + | ||
- | If a job is submitted with the [[: | + | |
- | + | ||
- | * promote any serial jobs to 20-core threaded (-pe threads 20) | + | |
- | * modify any parallel jobs to round-up the slot count to the nearest multiple of 20 | + | |
- | * ignore any memory resources and make all memory available on all nodes assigned to the job | + | |
- | + | ||
- | A job running on a node with '' | + | |
- | + | ||
- | Job script example: | + | |
- | <code bash> | + | |
- | # | + | |
- | # The exclusive flag asks to run this job only on all nodes required to fulfill requested slots | + | |
- | #$ -l exclusive=1 | + | |
- | # | + | |
- | # This job needs an openmpi parallel environment using 32 slots = 2 nodes exclusively. | + | |
- | #$ -pe openmpi 32 | + | |
- | # | + | |
- | # By default the slot count granted by Grid Engine will be | + | |
- | # used, one MPI worker per slot. Set this variable if you | + | |
- | # want to use fewer cores than Grid Engine granted you (e.g. | + | |
- | # when using exclusive=1): | + | |
- | # | + | |
- | # | + | |
- | + | ||
- | ... | + | |
- | </ | + | |
- | + | ||
- | <note tip>In the script example, this job would be rounded up to 40 and would be assigned 2 nodes. If you really want your job to run with only 32 slots, uncomment and set '' | + | |
- | + | ||
- | Grid Engine is configured to "fill up" nodes by allocating as many slots as possible before proceeding to another node to fulfill the total number of requested slots for the job. Unfortunately, | + | |
- | + | ||
- | To assure that your job will be the only job running on a node (or all nodes needed to satisfy the slots requested), specify the '' | + | |
- | + | ||
- | <code text> | + | |
- | qsub -l exclusive=1 ... | + | |
- | </ | + | |
- | + | ||
- | + | ||
- | + | ||
- | If a job is submitted with the general resource, Grid Engine will | + | |
- | + | ||
- | * promote any serial jobs to 20-core threaded (-pe threads 20) | + | |
- | * modify any parallel jobs to round-up the slot count to the nearest multiple of 20 | + | |
- | * ignore any memory resources and make all memory available on all nodes assigned to the job | + | |
- | + | ||
- | A job running on a node with '' | + | |
- | + | ||
- | Job script example: | + | |
- | <code bash> | + | |
- | # | + | |
- | # The exclusive flag asks to run this job only on all nodes required to fulfill requested slots | + | |
- | #$ -l exclusive=1 | + | |
- | # | + | |
- | # This job needs an openmpi parallel environment using 32 slots = 2 nodes exclusively. | + | |
- | #$ -pe openmpi 32 | + | |
- | # | + | |
- | # By default the slot count granted by Grid Engine will be | + | |
- | # used, one MPI worker per slot. Set this variable if you | + | |
- | # want to use fewer cores than Grid Engine granted you (e.g. | + | |
- | # when using exclusive=1): | + | |
- | # | + | |
- | # | + | |
- | + | ||
- | ... | + | |
- | </ | + | |
- | + | ||
- | <note tip>In the script example, this job would be rounded up to 40 and would be assigned 2 nodes. If you really want your job to run with only 32 slots, uncomment and set '' | + | |
- | + | ||
- | + | ||
- | + | ||
- | =====Actions at the run-time limit===== | + | |
When a standby job reaches its maximum run time, Grid Engine kills the job. The process depends on your use of Grid Engine' | When a standby job reaches its maximum run time, Grid Engine kills the job. The process depends on your use of Grid Engine' | ||
Line 244: | Line 164: | ||
User = traine | User = traine | ||
Queue = standby.q@n015 | Queue = standby.q@n015 | ||
- | Host = n015.mills.hpc.udel.edu | + | Host = n015.farber.hpc.udel.edu |
Start Time = 06/01/2012 12:38:51 | Start Time = 06/01/2012 12:38:51 | ||
End Time = 06/01/2012 16:43:53 | End Time = 06/01/2012 16:43:53 | ||
Line 259: | Line 179: | ||
==== What if my program does not catch USR2? ==== | ==== What if my program does not catch USR2? ==== | ||
- | < | + | < |
When a program that does not handle the '' | When a program that does not handle the '' | ||
Line 324: | Line 244: | ||
The first '' | The first '' | ||
+ | ===== Farber Exclusive access ===== | ||
+ | |||
+ | If a job is submitted with the '' | ||
+ | |||
+ | * promote any serial jobs to 20-core threaded (-pe threads 20) | ||
+ | * modify any parallel jobs to round-up the slot count to the nearest multiple of 20 | ||
+ | * ignore any memory resources and make all memory available on all nodes assigned to the job | ||
+ | |||
+ | A job running on a node with '' | ||
+ | |||
+ | Job script example: | ||
+ | <code bash> | ||
+ | # | ||
+ | # The exclusive flag asks to run this job only on all nodes required to fulfill requested slots | ||
+ | #$ -l exclusive=1 | ||
+ | # | ||
+ | # This job needs an openmpi parallel environment using 32 slots = 2 nodes exclusively. | ||
+ | #$ -pe openmpi 32 | ||
+ | # | ||
+ | # By default the slot count granted by Grid Engine will be | ||
+ | # used, one MPI worker per slot. Set this variable if you | ||
+ | # want to use fewer cores than Grid Engine granted you (e.g. | ||
+ | # when using exclusive=1): | ||
+ | # | ||
+ | # | ||
+ | |||
+ | ... | ||
+ | </ | ||
+ | |||
+ | <note tip>In the script example, this job would be rounded up to 40 and would be assigned 2 nodes. If you really want your job to run with only 32 slots, uncomment and set '' | ||
+ | |||
+ | Grid Engine is configured to "fill up" nodes by allocating as many slots as possible before proceeding to another node to fulfill the total number of requested slots for the job. Unfortunately, | ||
+ | |||
+ | To assure that your job will be the only job running on a node (or all nodes needed to satisfy the slots requested), specify the '' | ||
+ | |||
+ | <code text> | ||
+ | qsub -l exclusive=1 ... | ||
+ | </ | ||
+ | |||
+ | |||
+ | If a job is submitted with the general resource, Grid Engine will | ||
+ | |||
+ | * promote any serial jobs to 20-core threaded (-pe threads 20) | ||
+ | * modify any parallel jobs to round-up the slot count to the nearest multiple of 20 | ||
+ | * ignore any memory resources and make all memory available on all nodes assigned to the job | ||
+ | |||
+ | A job running on a node with '' | ||
+ | |||
+ | Job script example: | ||
+ | <code bash> | ||
+ | # | ||
+ | # The exclusive flag asks to run this job only on all nodes required to fulfill requested slots | ||
+ | #$ -l exclusive=1 | ||
+ | # | ||
+ | # This job needs an openmpi parallel environment using 32 slots = 2 nodes exclusively. | ||
+ | #$ -pe openmpi 32 | ||
+ | # | ||
+ | # By default the slot count granted by Grid Engine will be | ||
+ | # used, one MPI worker per slot. Set this variable if you | ||
+ | # want to use fewer cores than Grid Engine granted you (e.g. | ||
+ | # when using exclusive=1): | ||
+ | # | ||
+ | # | ||
+ | |||
+ | ... | ||
+ | </ | ||
+ | |||
+ | <note tip>In the script example, this job would be rounded up to 40 and would be assigned 2 nodes. If you really want your job to run with only 32 slots, uncomment and set '' |