remote/bin/mksb @ 46c8ae0df6cc default tip

More
author Steve Losh <steve@stevelosh.com>
date Thu, 30 Jan 2025 09:44:14 -0500
parents (none)
children (none)
#!/usr/bin/env bash

set -euo pipefail

name="$1"

read -p "Account? "
acct="$REPLY"

read -p "Hours? "
hours="$REPLY"

read -p "CPUs? "
cpus="$REPLY"

read -p "Memory (gb)? "
mem_gb="$REPLY"
mem_mb=$(( mem_gb * 1024 ))

cat << EOF > "$name".sbat
#!/usr/bin/env bash

#SBATCH --job-name=$name
#SBATCH --mail-type=END
#SBATCH --nodes=1
#SBATCH --ntasks-per-node=1
#SBATCH --cpus-per-task=$cpus
#SBATCH --mem=$mem_mb
#SBATCH --time=$hours:00:00
#SBATCH --account=$acct
#SBATCH --partition=standard
#SBATCH --output=slurm-%x-%j.log
#SBATCH --export=NONE

set -euo pipefail

my_job_header
echo
echo Arguments: "\$@"
echo

EOF

chmod u+x "$name.sbat"

"$EDITOR" "$name.sbat"