Skip to content

v0.16.0

Compare
Choose a tag to compare
@github-actions github-actions released this 12 Jul 19:30

HyperQueue 0.16.0

New features

Pregenerating access files

  • Via command hq server generate-access you can precreate an access file that can be later used for staring server,
    and connecting workers, and clients. This is usefull in cloud environments.

Job submission

  • A new command hq job forget <job-selector> has been introduced. It can be used to completely forget a job, and thus
    reduce the memory usage of the HQ server. It is useful especially if you submit a large amount of jobs and keep the
    server running for a long time.

Automatic allocation

  • Autoalloc can now execute a custom shell command/script on each worker node before the worker starts and after the
    worker stops. You can use this feature e.g. to initialize some data or load software modules for each worker node.

    $ hq alloc add pbs --time-limit 30m \
      --worker-start-cmd "/project/xxx/init-node.sh" \
      --worker-stop-cmd "/project/xxx/cleanup-node.sh"
  • You can now set a time limit for workers spawned in allocations with the --worker-time-limit flag. You can use this
    command to make workers stop sooner, so that you e.g. give more headroom for a --worker-stop-cmd command to execute
    before the allocation is terminated. If you do not use this parameter, worker time limit will be set to the time limit
    of the allocation.

    Example:

    $ hq alloc add pbs --time-limit 1h --worker-time-limit 58m --worker-stop-cmd "/project/xxxx/slow-command.sh"

    In this case, the allocation will run for one hour, but the HQ worker will be stopped after 58 minutes (unless it is
    stopped sooner because of idle timeout). The worker stop command will thus have at least two minutes to execute.

Changes

Access file

The format of the access file is changed. It is mostly internal change but you can experience parsing error when connecting
an old client/worker to a new server (Connecting a new client/worker to an old server will given you a proper message).

Artifact summary:

  • hq-v0.16.0-*: Main HyperQueue build containing the hq binary. Download this archive to
    use HyperQueue from the command line
    .
  • hyperqueue-0.16.0-*: Wheel containing the hyperqueue package with HyperQueue Python
    bindings.