Grid Engine

A YAML cluster configuration file for a Grid Engine (Sun Grid Engine, Son of Grid Engine, Univa Grid Engine) resource manager on an HPC cluster looks like:

# /etc/ood/config/clusters.d/my_cluster.yml
    title: "My Cluster"
    host: ""
    adapter: "sge"
    cluster: "my_cluster"
    bin: "/usr/lib/gridengine"
    conf: "/etc/default/gridengine"
    sge_root: "/var/lib/gridengine"
    libdrmaa_path: "/var/lib/gridengine/drmaa/"
    # bin_overrides:
      # qsub: "/usr/local/bin/qsub_wrapper"
      # qstat: ""
      # qhold: ""
      # qrls: ""
      # qdel: ""

with the following configuration options:


This is set to sge.


The Grid Engine cluster name. Optional


The path to the Grid Engine client installation binaries.


The path to the root directory of the Grid Engine installation. Default: /var/lib/gridengine


The path to the Grid Engine configuration file for this cluster. Optional


The full path to Provide this to enable use of libdrmaa for more precise job status reporting. Optional


A different, optional host to ssh to and then issue commands. Optional


Replacements/wrappers for Grid Engine’s job submission and control clients. Optional

Supports the following clients:

  • qsub

  • qstat

  • qhold

  • qrls

  • qdel


DRMAA improves OnDemand’s ability to report on the precise status of jobs. To use this feature ensure that for Grid Engine is installed or built and set the config value for libdrmaa_path and sge_root. If DRMAA is not installed then OnDemand is unable to get a precise job status for single jobs and will only return either queued or complete.

Common Issues

Shell environments

You may run into an error similar to this where the script running is using a BASH process substitution and there’s a syntax error.

/export/uge/some/file: line 156: syntax error near unexpected token <' /export/uge/some/file:
line 156: done < <(tail -f --pid=${SCRIPT_PID} “vnc.log”) &’

What you’ll need to do is add a script_wrapper element to your clusters’ configuration like below. This sets the sh shell to behave like bash and ensures you’ve sourced your users’ bashrc file.

# /etc/ood/config/clusters.d/my_cluster.yml
# (other elements removed for brevity)
      script_wrapper: |
        set +o posix
        . ~/.bashrc
      script_wrapper: |
        set +o posix
        . ~/.bashrc

Invalid Job name

If you encounter an issue in running batch connect applications complaining about invalid job names like the error below.

Unable to read script file because of error: ERROR! argument to -N option must not contain /

You’ll need to configure illegal job name characters as described here.