Skip to content

Specifying a subset of nodes from a queue #974

@avcopan

Description

@avcopan

I have adapted a code that I develop for to work with HyperQueue and am very impressed -- it's an amazing tool. Thank you for your work on it!

On one of the clusters we run on, I am encountering a scenario1 where it would be helpful to specify a list of nodes to run on. In a PBS submission script, I can do the following:

#!/usr/bin/env bash

#PBS -q <queue name>
#PBS -A <account name>
#PBS -l nodes=csed-0021+csed-0022
...

I have tried to pass the same flag to the hq alloc command as follows, but it doesn't seem to work:

hq alloc add pbs --time-limit 1h -- -q <queue name> -A <account name> -l nodes=csed-0021+csed-0022

I don't get an error, but the job just hangs and nothing gets submitted.

Is there a way to do this? If not, is there a possibility of adding this feature?

Footnotes

  1. The motivation is that this is a cluster where, unfortunately, many users are running jobs directly over SSH, rather than submitting through PBS. This is causing jobs to get submitted on nodes that are already occupied, causing them to fail, for example, by exceeding memory. The general culture on this cluster is to simply find a set of unoccupied nodes and run on those, and other users know to check which nodes are occupied first. So it would be useful to be able to specify a subset of nodes from the queue to run on, in order to avoid these clashes.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions