From c9c1787454dabee45f33beeb23c566944d8f2e8e Mon Sep 17 00:00:00 2001 From: Calvin Pieters Date: Wed, 25 Jan 2023 11:12:45 +0200 Subject: [PATCH] Added t3_submit and settings scripts for .t3 on zeus Updated .bashrc alias 'st' to user calvin rather than req. manual editing Rebased with main and updated submit.sh for RMG Rebased with main and updated submit.sh for RMG and T3 settings/submit --- Servers/Zeus/.bashrc | 6 +---- Servers/Zeus/.t3/settings.py | 43 +++++++++++++++++++++++++++++++++++ Servers/Zeus/.t3/t3_submit.py | 28 +++++++++++++++++++++++ Servers/Zeus/ARC/submit.sh | 1 - Servers/Zeus/RMG/submit.sh | 9 ++++---- 5 files changed, 76 insertions(+), 11 deletions(-) create mode 100755 Servers/Zeus/.t3/settings.py create mode 100755 Servers/Zeus/.t3/t3_submit.py diff --git a/Servers/Zeus/.bashrc b/Servers/Zeus/.bashrc index 3904fdc..bc1e75d 100644 --- a/Servers/Zeus/.bashrc +++ b/Servers/Zeus/.bashrc @@ -1,7 +1,4 @@ - - # User specific aliases and functions -# Note: Change the keyword of the last "st" command to your own username (without the "<" and ">) # RMG-Py @@ -37,5 +34,4 @@ alias t3code='cd $t3_path' alias runs='cd ~/runs' alias rmg='python-jl $rmgpy_path/rmg.py input.py > >(tee -a stdout.log) 2> >(tee -a stderr.log >&2)' alias sb='qsub submit.sh' -alias st='qstat -u ' - +alias st='qstat -u $USER' diff --git a/Servers/Zeus/.t3/settings.py b/Servers/Zeus/.t3/settings.py new file mode 100755 index 0000000..0df8d38 --- /dev/null +++ b/Servers/Zeus/.t3/settings.py @@ -0,0 +1,43 @@ +""" +T3's settings + +You may keep a short version of this file in a local ".t3" folder under your home folder. +Any definitions made to the local file will take precedence over this file. +""" + + +# The execution type can be either 'incore', i.e., executed in the same processor, +# or 'local', i.e., to be submitted to the server queue if running on a server. +# If running on a local server, ARC's settings for ``local`` will be used. +execution_type = { + 'rmg': 'local', + 'arc': 'local', +} + +servers = { + 'local': { + 'cluster_soft': 'PBS', + 'cpus': 16, + 'max mem': 40, # GB + }, +} + +check_status_command = {'OGE': 'export SGE_ROOT=/opt/sge; /opt/sge/bin/lx24-amd64/qstat -u $USER', + 'Slurm': '/usr/bin/squeue -u $USER', + 'PBS': '/opt/pbs/bin/qstat -u $USER', + 'HTCondor': """condor_q -cons 'Member(Jobstatus,{1,2})' -af:j '{"0","P","R","X","C","H",">","S"}[JobStatus]' RequestCpus RequestMemory JobName '(Time() - EnteredCurrentStatus)'""", + } + +submit_command = {'OGE': 'export SGE_ROOT=/opt/sge; /opt/sge/bin/lx24-amd64/qsub', + 'Slurm': '/usr/bin/sbatch', + 'PBS': '/opt/pbs/bin/qsub', + 'HTCondor': 'condor_submit', + } + +submit_filenames = {'OGE': 'submit.sh', + 'Slurm': 'submit.sl', + 'PBS': 'submit.sh', + 'HTCondor': 'submit.sub', + } + +rmg_initial_memory = 25 # The initial memory for an RMG job when submitted to the queue, in GB diff --git a/Servers/Zeus/.t3/t3_submit.py b/Servers/Zeus/.t3/t3_submit.py new file mode 100755 index 0000000..169aecb --- /dev/null +++ b/Servers/Zeus/.t3/t3_submit.py @@ -0,0 +1,28 @@ +""" +Submit scripts +""" + +# Submission scripts stored as a dictionary with software as the primary key. +submit_scripts = { + 'rmg': """#!/bin/bash -l + +#PBS -N {name} +#PBS -q zeus_long_q +#PBS -l walltime=168:00:00 +#PBS -l select=1:ncpus={cpus} +#PBS -o out.txt +#PBS -e err.txt + +PBS_O_WORKDIR={workdir} +cd $PBS_O_WORKDIR + +conda activate rmg_env + +touch initial_time + +python-jl ~/Code/RMG-Py/rmg.py -n {cpus} input.py {max_iterations} + +touch final_time + +""", +} diff --git a/Servers/Zeus/ARC/submit.sh b/Servers/Zeus/ARC/submit.sh index 81052c5..2503da5 100644 --- a/Servers/Zeus/ARC/submit.sh +++ b/Servers/Zeus/ARC/submit.sh @@ -13,4 +13,3 @@ cd $PBS_O_WORKDIR conda activate arc_env python $arc_code/ARC.py input.yml - diff --git a/Servers/Zeus/RMG/submit.sh b/Servers/Zeus/RMG/submit.sh index a184b0d..6a473a8 100644 --- a/Servers/Zeus/RMG/submit.sh +++ b/Servers/Zeus/RMG/submit.sh @@ -1,13 +1,12 @@ #!/bin/bash -l -#PBS -N # Note: Manually change this job name, and delete this comment -#PBS -q zeus_new_q -#PBS -l walltime=72:00:00 -#PBS -l select=1:ncpus=10 +#PBS -q zeus_long_q +#PBS -N {name} +#PBS -l select=1:ncpus={cpus}:mem={memory} #PBS -o out.txt #PBS -e err.txt -PBS_O_WORKDIR=~/runs/RMG/x1001/ +PBS_O_WORKDIR={pwd} cd $PBS_O_WORKDIR conda activate rmg_env