Skip to end of metadata
Go to start of metadata

Contents

Profile

gpsc1.conf
# syntax=jobgenconf
#
# gpsc1.conf
#

[default]
meta.min.request.chunk.*.memory = 2500M
request.chunk.0.memory = 2500M
request.chunk.0.ncores = 1
request.chunk.0.nslots = 1
request.chunk.0.tmpfs = 500M
request.qs = gridengine-gpsc
request.queue = dev
request.wallclock = 60

[queue.dev]
meta.max.request.chunk.*.memory = 100000M
meta.max.request.chunk.*.ncores = 16
qs.gridengine.pe = dev

[queue.dev-ln]
meta.max.request.chunk.*.memory = 980000M
meta.max.request.chunk.*.ncores = 40
qs.gridengine.pe = dev-ln

[queue.dev-sln]
meta.max.request.chunk.*.memory = 2800000M
meta.max.request.chunk.*.ncores = 64
qs.gridengine.pe = dev-sln

Explanation:

  • 3 queues are defined:
    • dev - basic compute nodes
    • dev-ln - large nodes
    • dev-sln - super large nodes
  • max limits:
    • defined for memory, ncores for each queue
    • different for each queue because they are hosted on different sized hosts
  • the jobgen queues are supported using similarly named Gridengine PEs corresponding dev, dev-ln, dev-sln
  • from the default section:
    • the minimum memory request is 2500M
    • the queueing system is selected by request.qs in the default section; this value is used to load from a section called qs.<qsname> (typically defined in site.conf)
    • chunk settings for memory, ncores, nslots, and tmpfs are all set (the job does not need to request these)
    • dev queue is selected by default (the job does not need to request it)
    • unless overridden, the job will have 60s to run

Job Files

Minimal

Job file:

min-hello.jgen
#! /bin/bash

echo "hello"

Notes:

  • there are directives
  • any directives will come from the profiles

Generate job file:

jobgen -p gpsc1 -j min-hello.jgen

Generated job file:

#! /bin/bash

echo "hello"

# ---- jobgen -- start
# ---- jobgen -- timestamp (2019-07-13 10:55:28)
# ---- jobgen -- generator (jobgen.generators.gridengine.GridengineGPSCGenerator)
# ---- jobgen -- syshooks (check_memory_tmpfs) (None) (None)
# ---- jobgen -- hooks (bump_wallclock) (None) (None)
#
#$ -j n
#$ -S /bin/bash
#$ -v JOBGEN_JOINOUTERR=false
#$ -v JOBGEN_NSLOTS=1
#$ -v JOBGEN_QUEUE=dev
#$ -v JOBGEN_SHELL=/bin/bash
#$ -v JOBGEN_SLOT_MEMORY=2621440000B
#$ -v JOBGEN_SLOT_NCORES=1
#$ -v JOBGEN_SLOT_TMPFS=524288000B
#$ -v JOBGEN_WALLCLOCK=60
#$ -pe dev 1
#$ -l h_rt=0:01:00
#$ -l res_mem=2500
#$ -l res_cpus=1
#$ -l res_tmpfs=500
#
# ---- jobgen -- end

Notes:

  • the shell (/bin/bash) is set in the site.conf
  • the stdout and stderr are not joined
  • the chunk settings are converted as:
    • memory→ res_mem
    • ncores → res_cpus
    • tmpfs → res_tmpfs


  • No labels