I have a host-level resource called “speed” that is either fast or normal. Some users want to be able to request a “fast” host but if there are none available, get scheduled on a normal host.
Is there a way, either in qsub or the scheduler to have that resource be a “soft” requirement? Or would this be better served via placement sets?
soft limit can be applied to the consumable resources.
Solution1:
qsub wrapper script which checks the current availability and updates the qsub request and submits the job ( aware of race condition when multiple users are submitting job )
Solution 2:
Create a 3 queues:
fastq – mapped to fast nodes (default_chunk.speed=fast )
slowq – mapped to slow nodes (default_chunk.speed=slow)
anyq – mapped to all nodes (default chunk speed=any)