adapted rungms script script (edit variable section) and slurm jobfiles here 
reported here below:


### GAMESS RUNGMS for SLURM ###

#!/bin/tcsh

set RUNGMS=$0

if ( $#argv <= 1 ) then
  echo
  echo "USAGE: $RUNGMS:t <-i inputfile> \\"
  echo "              [-b gamess_binary] \\"
  echo "              [-d data_folder] \\"
  echo "              [-a auxdata_folder] \\"
  echo "              [-s scratch_folder] \\"
  echo "              [-e extbas_folder] \\"
  echo "              [-h hostfile] \\"
  echo "              [-t target] \\"
  echo "              [-hpnet high_performance_network]"
  echo
  echo "NOTES: *) <...> mandatory, [...] optional"
  echo
  echo "       *) '-i': inputfile MUST HAVE '.inp' extension"
  echo
  echo "       *) '-t': sockets | impi-3steps | impi-hydra | openmpi"
  echo
  echo "       *) '-h': hostfile format:  node01"
  echo "                                  node01"
  echo "                                  node01"
  echo "                                  node01"
  echo "                                  node07"
  echo "                                  node07"
  echo "                                  node07"
  echo "                                  node07"
  echo
  echo "       *) '-hpnet': mainly used with '-t sockets' (e.g '.ipoib')"
  echo
  exit
endif

echo 
"+==============================================================================+"
echo "|                         GAMESS Execution Script LOGS                    
     |"
echo 
"+==============================================================================+"
echo
echo "+------------------------------- CHECK INPUTS 
---------------------------------+"

while ( $#argv )
  set val=$argv[1]
  shift argv

  switch ( $val )
    case -i:
      if ( ! $#argv ) then
        echo
        echo "ERROR: Check your '-i' option. ABORTING."
        exit
      endif

      set INP="$argv[1]"

      shift argv
    breaksw
    case -b:
      if ( ! $#argv ) then
        echo
        echo "ERROR: Check your '-b' option. ABORTING."
        exit
      endif

      set GMS="$argv[1]"

      shift argv
    breaksw
    case -d:
      if ( ! $#argv ) then
        echo
        echo "ERROR: Check your '-d' option. ABORTING."
        exit
      endif

      set DATA="$argv[1]"

      shift argv
    breaksw
    case -a:
      if ( ! $#argv ) then
        echo
        echo "ERROR: Check your '-a' option. ABORTING."
        exit
      endif

      set AUXDATA="$argv[1]"

      shift argv
    breaksw
    case -s:
      if ( ! $#argv ) then
        echo
        echo "ERROR: Check your '-s' option. ABORTING."
        exit
      endif

      set SCR="$argv[1]"

      shift argv
    breaksw
    case -e:
      if ( ! $#argv ) then
        echo
        echo "ERROR: Check the '-e' option. ABORTING."
        exit
      endif

      setenv EXTBAS "$argv[1]"

      shift argv
    breaksw
    case -h:
      if ( ! $#argv ) then
        echo
        echo "ERROR: Check the '-h' option. ABORTING."
        exit
      endif

      set HOSTS="$argv[1]"

      shift argv
    breaksw
    case -hpnet:
      if ( ! $#argv ) then
        echo
        echo "ERROR: Check the '-hpnet' option. ABORTING."
        exit
      endif

      set NETEXT="$argv[1]"

      shift argv
    breaksw
    case -t:
      if ( ! $#argv ) then
        echo
        echo "ERROR: Check the '-t' option. ABORTING."
        exit
      endif

      set TARGET="$argv[1]"

      shift argv
    breaksw
    default:
      echo

      if ( ! $#argv ) then
        echo "ERROR: Unknown option '$val' found. ABORTING."
      else
        echo "ERROR: Unknown option '$val $argv[1]' found. ABORTING."
      endif

      exit
    breaksw
  endsw
end

if ( ! $?INP ) then
  echo
  echo "ERROR: Input file not specified. ABORTING."
  exit
endif

##############################
### BEGIN VARIABLE SECTION ###
##############################

set READLINk='/bin/readlink'
set HOSTNAMe='/bin/hostname'
set    UNAMe='/bin/uname'
set    MKDIr='/bin/mkdir'
set     DATe='/bin/date'
set     GREp='/bin/grep'
set      CAt='/bin/cat'
set      SEd='/bin/sed'
set       Mv='/bin/mv'
set       Rm='/bin/rm'
set       Ls='/bin/ls'
set       Cp='/bin/cp'
set       Df='/bin/df'
set     UNIq='/usr/bin/uniq'
set     SORt='/usr/bin/sort'
set      SSh='/usr/bin/ssh'
set      SCp='/usr/bin/scp'
set      AWk='/usr/bin/awk'
set       Wc='/usr/bin/wc'
set     PERl='/usr/bin/perl'

# This var should not be modified
set master=`$HOSTNAMe`

# This var should not be modified
set NCPUS=1

# This var should not be modified
set ASYM='false'

# This var should not be modified
set INP=`$READLINk -f $INP`

# This var should not be modified
set JOB=$INP:r

# This var should not be modified
set JOB=$JOB:t

# This var should not be modified
set DATE=`$DATe`

# This var should not be modified
set DATE=`echo $DATE | $SEd 's/[: ]/_/g'`

if ( ! $?GMS )     set        
GMS='/software/base/gamess-May012013R1-intel/gamess-sockets.00.x'
if ( ! $?AUXDATA ) setenv AUXDATA 
'/software/base/gamess-May012013R1-intel/auxdata'
# Make sure this var is unique (here we use $DATE for that)
if ( ! $?SCR )     set        SCR="/scratch/$USER/gamess/$JOB-$DATE"
# Make sure this var is unique (here we use $DATE for that)
if ( ! $?DATA )    set       DATA="/data/$USER/gamess/$JOB-$DATE"
if ( ! $?EXTBAS )  setenv  EXTBAS '/dev/null'
if ( ! $?TARGET )  set     TARGET='sockets'
if ( ! $?NETEXT )  set     NETEXT=''
if ( ! $?HOSTS )   set      HOSTS=''

switch ( $TARGET )
  case sockets:
    setenv MKL_SERIAL YES
    setenv MKL_NUM_THREADS 1
    setenv DDI_RSH ssh
    setenv DDI_RCP scp
  breaksw
  case impi-*:
    if ( ! $?I_MPI_ROOT ) setenv I_MPI_ROOT 
'/software/base/intel/impi/4.0.3.008'

    if ( ! $?PATH ) then
      setenv PATH "$I_MPI_ROOT/intel64/bin"
    else
      setenv PATH "$I_MPI_ROOT/intel64/bin:$PATH"
    endif

    if ( ! $?LD_LIBRARY_PATH ) then
      setenv LD_LIBRARY_PATH "$I_MPI_ROOT/intel64/lib"
    else
      setenv LD_LIBRARY_PATH "$I_MPI_ROOT/intel64/lib:$LD_LIBRARY_PATH"
    endif

    setenv I_MPI_WAIT_MODE enable
    setenv I_MPI_PIN disable
    setenv I_MPI_DEBUG 0
    setenv I_MPI_STATS 0
    setenv I_MPI_FABRICS dapl
    setenv I_MPI_DAT_LIBRARY libdat2.so

    if ( $TARGET == impi-hydra ) then
      setenv I_MPI_HYDRA_ENV all
      setenv I_MPI_PROCESS_MANAGER hydra

      if ( $?SLURM_JOBID ) setenv I_MPI_PMI_LIBRARY '/usr/local/lib/libpmi.so'
    endif
  breaksw
  case openmpi:
    if ( ! $?O_MPI_ROOT ) set O_MPI_ROOT='/software/base/openmpi-1.6.4-intel'

    if ( ! $?PATH ) then
      setenv PATH "$O_MPI_ROOT/bin"
    else
      setenv PATH "$O_MPI_ROOT/bin:$PATH"
    endif

    if ( ! $?LD_LIBRARY_PATH ) then
      setenv LD_LIBRARY_PATH "$O_MPI_ROOT/lib"
    else
      setenv LD_LIBRARY_PATH "$O_MPI_ROOT/lib:$LD_LIBRARY_PATH"
    endif
  breaksw
  default:
    echo
    echo "ERROR: Target mode '$TARGET' not supported. ABORTING."
    exit
  breaksw
endsw

############################
### END VARIABLE SECTION ###
############################

if ( $INP:e != inp ) then
  echo
  echo "ERROR: Input file '$INP' must have '.inp' extension. ABORTING."
  exit
endif

if ( ! -e $INP ) then
  echo
  echo "ERROR: Input file '$INP' does not exist. ABORTING."
  exit
endif

if ( null$HOSTS != null ) then
  if ( ! -e $HOSTS ) then
    echo
    echo "ERROR: Host file '$HOSTS' does not exist. ABORTING."
    exit
  endif

  set HOSTS=`$READLINk -f $HOSTS`
endif

if ( ! -e $GMS ) then
  echo
  echo "ERROR: GAMESS binary file '$GMS' does not exist. ABORTING."
  exit
endif

if ( ! -x $GMS ) then
  echo
  echo "ERROR: Cannot execute '$GMS', check file permissions. ABORTING."
  exit
endif

set GMS=`$READLINk -f $GMS`

setenv GMSPATH $GMS:h

set gms=$GMS:t

set DDIKICK=$GMSPATH/ddikick.x

if ( $TARGET == sockets ) then
  if ( ! -e $DDIKICK ) then
    echo
    echo "ERROR: DDIKICK binary file '$DDIKICK' does not exist. ABORTING."
    exit
  endif

  if ( ! -x $DDIKICK ) then
    echo
    echo "ERROR: Cannot execute '$DDIKICK', check file permissions. ABORTING."
    exit
  endif
endif

if ( ! -d $AUXDATA ) then
  echo
  echo "ERROR: Auxiliary data folder '$AUXDATA' does not exist. ABORTING."
  exit
endif

setenv AUXDATA `$READLINk -f $AUXDATA`

if ( ! -d $DATA ) then
  $MKDIr -p $DATA >& /dev/null

  if ( $? > 0 ) then
    echo
    echo "ERROR: Cannot create data folder '$DATA'. ABORTING."
    exit
  else
    echo
    echo "Data folder '$DATA' successfully created."
  endif
endif

set DATA=`$READLINk -f $DATA`

if ( ! -d $SCR ) then
  $MKDIr -p $SCR >& /dev/null

  if ( $? > 0 ) then
    echo
    echo "ERROR: Cannot create scratch folder '$SCR'. ABORTING."
    exit
  else
    echo
    echo "Scratch folder '$SCR' successfully created."
  endif
endif

set SCR=`$READLINk -f $SCR`

echo
echo "+--------------------------------- ALL DONE 
-----------------------------------+"
echo
echo "+------------------------------- BUILD PROCFILE 
-------------------------------+"

setenv NODEFILE "$SCR/$JOB.nodefile"

setenv PROCFILE "$SCR/$JOB.procfile"

if ( null$HOSTS == null ) then
  echo $master > $NODEFILE

  set HOSTS=$NODEFILE
else
  $CAt $HOSTS | $SORt | $UNIq > $NODEFILE

  set NCPUS=`$CAt $HOSTS | $Wc -l`
endif

set NNODES=`$CAt $NODEFILE | $Wc -l`

switch ( $TARGET )
  case sockets:
    $AWk '{arr[$1]++} END {for(i in arr) print i"'$NETEXT':cpus="arr[i]}' 
$HOSTS > $PROCFILE
  breaksw
  case impi-hydra:
    $AWk '{arr[$1]++} END {for(i in arr) print i"'$NETEXT':cpus="arr[i]*2}' 
$HOSTS > $PROCFILE
  breaksw
  case impi-3steps:
    $AWk '{arr[$1]++} END {for(i in arr) print "-n "arr[i]*2" -host "i" 
'$GMS'"}' $HOSTS > $PROCFILE
  case openmpi:
    $AWk '{arr[$1]++} END {for(i in arr) print i"'$NETEXT':cpus="arr[i]*2}' 
$HOSTS > $PROCFILE
  breaksw
endsw

if ( `$CAt $PROCFILE | $PERl -ne 'print "$1$2\n" if /-n\s+(\d+)|=(\d+)/' | 
$SORt -n | $UNIq | $Wc -l` > 1 ) set ASYM='true'

echo

$CAt $PROCFILE

echo
echo "+--------------------------------- ALL DONE 
-----------------------------------+"
echo
echo "+------------------------------ INITIALIZE RUN 
--------------------------------+"

if ( ( $ASYM == true ) && ( $TARGET != sockets ) ) then
  echo
  echo "ERROR: Detected asymmetric MPI job layout (currently NOT SUPPORTED). 
ABORTING."
  exit
else
  @ PPN = $NCPUS / $NNODES
  @ PROCPN = $PPN * 2
  @ NPROCS = $NCPUS * 2
endif

echo
echo "This job is running on node '$master' under operating system '`$UNAMe`' 
at '`$DATe`'."
echo
echo "Supplementary output files will be written to '$DATA'"
echo
echo "Temporary binary files will be written to '$SCR'"
echo
echo "GAMESS binary file is '$GMS'"

foreach node (`$CAt $NODEFILE`)
  echo
  echo "Available scratch disk space on '$node' at beginning of the job is:"
  echo

  if ( $node == $master ) then
    $Df -h $SCR
  else
    $SSh -o ConnectTimeout=5 -n $node $Df -h $SCR
  endif
end

#limit stacksize 8192

$Cp $INP $SCR/$JOB.F05

source $GMSPATH/gms-files.csh

if ( -e $HOME/.gmsrc ) then
  echo
  echo "Found existing '$HOME/.gmsrc'."

  source $HOME/.gmsrc

  echo
  echo "User '$HOME/.gmsrc' merged with '$GMSPATH/gms-files.csh'."
endif

set ngddi=`$GREp -i '^ \$GDDI' $SCR/$JOB.F05 | $GREp -iv 'NGROUP=0 ' | $Wc -l`

if ( $ngddi > 0 ) then
  set GDDIjob=true

  echo
  echo "This is a GDDI run, keeping various output files on local disks."
  echo

  setenv OUTPUT $SCR/$JOB.F06
  setenv  PUNCH $SCR/$JOB.F07
else
  set GDDIjob=false
endif

if ( $GDDIjob == true ) then
  foreach node (`$CAt $NODEFILE`)
    if ( $node != $master ) $SCp $SCR/$JOB.F05 ${node}:$SCR/$JOB.F05
  end
endif

if ( (-e $PUNCH) || (-e $MAKEFP) || (-e $TRAJECT) || (-e $RESTART) ) then
  echo
  echo "Please save, rename, or erase these files from a previous run:"
  echo "  '$PUNCH'"
  echo "  '$TRAJECT'"
  echo "  '$RESTART'"
  echo "  '$MAKEFP'"
  echo "and then resubmit this computation."
  exit
endif

echo
echo "+--------------------------------- ALL DONE 
-----------------------------------+"
echo
echo "+------------------------------ READY TO START 
--------------------------------+"
echo

#chdir $SCR

# ----------------- Execution Section ----------------- #

switch ( $TARGET )
  case sockets:
    set HOSTLIST=(`$CAt $PROCFILE`)

    $DDIKICK $GMSPATH/$gms $JOB \
      -ddi $NNODES $NCPUS $HOSTLIST \
      -scr $SCR < /dev/null
  breaksw
  case impi-hydra:
    setenv I_MPI_PERHOST $PROCPN

    if ( $?SLURM_JOBID ) then
      srun --overcommit -n $NPROCS -N $NNODES --ntasks-per-node=$PROCPN $GMS
    endif

    if ( $?OAR_JOB_ID ) then
      mpiexec.hydra -f $PROCFILE -n $NPROCS $GMS < /dev/null
    endif
  breaksw
  case impi-3steps:
    if ( $?OAR_JOB_ID ) then
      mpdboot --rsh=ssh -n $NNODES -f $NODEFILE

      mpiexec -configfile $PROCFILE < /dev/null

      mpdallexit
    endif
  breaksw
  case openmpi:
    if ( $?SLURM_JOBID ) then
      srun --resv-port --overcommit -n $NPROCS -N $NNODES 
--ntasks-per-node=$PROCPN $GMS
    endif

    if ( $?OAR_JOB_ID ) then
      mpirun \
        -machinefile $NODEFILE \
        -np $NPROCS \
        -npernode $PROCPN \
        --mca orte_rsh_agent oarsh \
        -mca btl openib,self,sm $GMS < /dev/null
    endif
  breaksw
endsw

# ------ END  Execution Section ------ #

echo
echo "+--------------------------------- ALL DONE 
-----------------------------------+"
echo
echo "+----------------------------- ACCOUNTING INFO 
--------------------------------+"

if ( $GDDIjob == true ) $Cp $SCR/$JOB.F07 $DATA/$JOB.dat

echo
echo "Files used on the master node '$master' were:"
echo

$Ls -lF $SCR/$JOB.*
$Rm     $SCR/$JOB.F*

if ( -e $SCR/$JOB.V84 )    $Mv $SCR/$JOB.V84   $DATA
if ( -e $SCR/$JOB.V80 )    $Rm $SCR/$JOB.V*
if ( -e $SCR/$JOB.TEMP02 ) $Rm $SCR/$JOB.TEMP*
if ( -e $SCR/$JOB.orb )    $Mv $SCR/$JOB.orb   $DATA
if ( -e $SCR/$JOB.vec )    $Mv $SCR/$JOB.vec   $DATA
if ( -e $SCR/$JOB.mol )    $Mv $SCR/$JOB.mol   $DATA
if ( -e $SCR/$JOB.molf )   $Mv $SCR/$JOB.molf  $DATA
if ( -e $SCR/$JOB.mkl )    $Mv $SCR/$JOB.mkl   $DATA
if ( -e $SCR/$JOB.xyz )    $Mv $SCR/$JOB.xyz   $DATA

($Ls $SCR/${JOB}-*.cube > $SCR/${JOB}.lis) >& /dev/null
if ( ! -z $SCR/${JOB}.lis ) $Mv $SCR/${JOB}*.cube $DATA
$Rm $SCR/${JOB}.lis

($Ls $SCR/${JOB}-*.grd > $SCR/${JOB}.lis) >& /dev/null
if ( ! -z $SCR/${JOB}.lis ) $Mv $SCR/${JOB}*.grd  $DATA
$Rm $SCR/${JOB}.lis

($Ls $SCR/${JOB}-*.csv > $SCR/${JOB}.lis) >& /dev/null
if ( ! -z $SCR/${JOB}.lis ) $Mv $SCR/${JOB}*.csv  $DATA
$Rm $SCR/${JOB}.lis

foreach node (`$CAt $NODEFILE`)
  if ( $node != $master ) then
    echo
    echo "Files used on node '$node' were:"
    echo

    ($SSh -o ConnectTimeout=5 -n $node "$Ls -lF $SCR/$JOB.*" > /dev/tty) >& 
/dev/null

    if ( $? < 1 ) then
      $SSh -o ConnectTimeout=5 -n $node "$Rm $SCR/$JOB.F*"
    else
      echo "NONE"
    endif
  endif
end

if ( $?I_MPI_STATS ) then
  if ( $I_MPI_STATS > 0 ) $Mv $SCR/stats.txt $DATA
endif

if ( -e $PROCFILE ) $Rm $PROCFILE
if ( -e $NODEFILE ) $Rm $NODEFILE

echo
echo "+--------------------------------- ALL DONE 
-----------------------------------+"
echo
echo "+------------------------------- JOB COMPLETE 
---------------------------------+"
echo

$DATe

echo
echo 
"+==============================================================================+"
echo "|                         GAMESS Execution Script DONE                    
     |"
echo 
"+==============================================================================+"

############################

### INTEL-MPI GAMESS JOBFILE ###

#!/bin/bash

#SBATCH -o job-%j.out
#SBATCH -e job-%j.err
#SBATCH -J JOBNAME
#SBATCH -n 16
#SBATCH -N 2
#SBATCH -c 1
#SBATCH --tasks-per-node=8
#SBATCH -A ma2
#SBATCH -p ma2
#SBATCH -C ibma1
#SBATCH --exclusive
#SBATCH -t 1-00:00:00
#SBATCH --mem-per-cpu=1024

GAMESS='/software/base/gamess-May012013R1-intel/gamess-impi.00.x'
RUNGMS='/software/base/gamess-May012013R1-intel/rungms'
TARGET='impi-hydra'
EXTBAS='/dev/null'
JOBUID="job-$SLURM_JOBID"
JOBHST="$JOBUID.hst"

SOPT="-n $SLURM_NNODES --ntasks-per-node=1"

source /software/ENV/set_intel-111-base.sh
source /software/ENV/set_mkl-111-base.sh
source /software/ENV/set_impi-403-base.sh

# INPUT FILE MUST HAVE .inp EXTENSION
INP='ene.inp'

DATA="/data-sbsrv9/$USER/gamess/DATA/$JOBUID"
 SCR="/scratch/$USER/gamess/$JOBUID"

srun hostname -s | sort > $JOBHST

srun $SOPT /bin/mkdir -p $SCR

$RUNGMS -i $INP \
        -b $GAMESS \
        -d $DATA \
        -s $SCR \
        -e $EXTBAS \
        -h $JOBHST \
        -t $TARGET

srun $SOPT /bin/rm -rf $SCR

############################

### OPEN-MPI GAMESS JOBFILE ###

#!/bin/bash

#SBATCH -o job-%j.out
#SBATCH -e job-%j.err
#SBATCH -J JOBNAME
#SBATCH -n 16
#SBATCH -N 2
#SBATCH -c 1
#SBATCH --tasks-per-node=8
#SBATCH -A ma2
#SBATCH -p ma2
#SBATCH -C ibma1
#SBATCH --exclusive
#SBATCH -t 1-00:00:00
#SBATCH --mem-per-cpu=1024

GAMESS='/software/base/gamess-May012013R1-intel/gamess-openmpi.00.x'
RUNGMS='/software/base/gamess-May012013R1-intel/rungms'
TARGET='openmpi'
EXTBAS='/dev/null'
JOBUID="job-$SLURM_JOBID"
JOBHST="$JOBUID.hst"

SOPT="-n $SLURM_NNODES --ntasks-per-node=1"

source /software/ENV/set_intel-111-base.sh
source /software/ENV/set_mkl-111-base.sh
source /software/ENV/set_openmpi-164-intel-base.sh

# INPUT FILE MUST HAVE .inp EXTENSION
INP='ene.inp'

DATA="/data-sbsrv9/$USER/gamess/DATA/$JOBUID"
 SCR="/scratch/$USER/gamess/$JOBUID"

srun hostname -s | sort > $JOBHST

srun $SOPT /bin/mkdir -p $SCR

$RUNGMS -i $INP \
        -b $GAMESS \
        -d $DATA \
        -s $SCR \
        -e $EXTBAS \
        -h $JOBHST \
        -t $TARGET

srun $SOPT /bin/rm -rf $SCR

############################

### SOCKETS GAMESS JOBFILE ###

#!/bin/bash

#SBATCH -o job-%j.out
#SBATCH -e job-%j.err
#SBATCH -J JOBNAME
#SBATCH -n 16
#SBATCH -N 2
#SBATCH -c 1
#SBATCH -A ma2
#SBATCH -p ma2
#SBATCH -C ibma1
#SBATCH -t 1-00:00:00
#SBATCH --exclusive
#SBATCH --tasks-per-node=8
#SBATCH --mem-per-cpu=1024

GAMESS='/software/base/gamess-May012013R1-intel/gamess-sockets.00.x'
RUNGMS='/software/base/gamess-May012013R1-intel/rungms'
TARGET='sockets'
EXTBAS='/dev/null'
 HPNET='.ipoib'
JOBUID="job-$SLURM_JOBID"
JOBHST="$JOBUID.hst"

DATA="/data-sbsrv9/$USER/gamess/DATA/$JOBUID"
 SCR="/scratch/$USER/gamess/$JOBUID"

# gamess input file MUST HAVE '.inp' extension
INP='ene.inp'

SOPT="-n $SLURM_NNODES --ntasks-per-node=1"

source /software/ENV/set_intel-111-base.sh
source /software/ENV/set_mkl-111-base.sh

srun hostname -s | sort > $JOBHST

srun $SOPT /bin/mkdir -p $SCR

$RUNGMS -i $INP \
        -b $GAMESS \
        -d $DATA \
        -s $SCR \
        -e $EXTBAS \
        -h $JOBHST \
        -t $TARGET \
        -hpnet $HPNET

srun $SOPT /bin/rm -rf $SCR

________________________________________
From: Loris Bennett [[email protected]]
Sent: Friday, September 26, 2014 1:48 PM
To: slurm-dev
Subject: [slurm-dev] Re: Start script for GAMESS?

Hi Paddy,

Paddy Doyle <[email protected]> writes:

> Hi Loris,
>
> On Fri, Sep 26, 2014 at 03:24:58AM -0700, Loris Bennett wrote:
>
>>
>> Hi,
>>
>> I'm installing GAMESS on our cluster for the first time and find that it
>> has a slightly crufty, Slurm-unaware start script.
>>
>> Has anyone already adapted this for Slurm and is willing to share?
>
> It's a tricky one alright!
>
> See attached a custom rungms.slurm that I hacked together for our system...
>
> I had a little bit of fighting to get it to work with Slurm! :) The rungms
> script is quite hard-coded with local values to begin with (and it's csh 
> which I
> don't like as a scripting language).
>
> Our rungms.slurm script unfortunately still has some hard-coded paths from our
> setup, and I used the python hostlist tool, so there's definitely some changes
> to be made for your setup.
>
> I compiled GAMESS with Intel 14 and IMPI 4.
>
> I used a bunch of SLURM_* environment variables in the script.
>
> I tried to leave the control of the runtime setup (nodes/cores) in the hands 
> of
> the Slurm submission script.
>
> E.g. if the user wanted 16 cores (in our cluster there are 8 per node), they'd
> just use
>
>   #SBATCH -n 16
>
> ..and the rungms.slurm would figure out that it was 16 cores over 2 nodes, and
> start 8 on each.
>
> Or if they need more RAM per core, they could ask for:
>
>   #SBATCH -n 16
>   #SBATCH -N 4
>
> ..and again the rungms.slurm would use the Slurm environment to figure out how
> many nodes and how many processes per node.
>
> I used the slurm-aware hydra launcher, which takes care of those details I
> think.
>
>   mpiexec.hydra -bootstrap slurm ...
>
>
>
> Hopefully it will be of use to you.
>
> Thanks,
> Paddy

Thanks, Paddy.  I had noticed you mention the script on your GAMESS page
at TCHPC, so I was already hoping you might be able to help me out ...

I'll try to get it working following your example and once that's done
maybe have a look at adapting it to fit in with 'modules' (although
GAMESS seems to have a very strange notion of what 'version' means).

Cheers,

Loris

--
Dr. Loris Bennett (Mr.)
ZEDAT, Freie Universit?t Berlin         Email [email protected]

Reply via email to