2022-06-07 09:33:22 +00:00
|
|
|
// Define the Scratch directory
|
|
|
|
def scratch_dir = System.getenv("VSC_SCRATCH_VO_USER") ?: "scratch/"
|
|
|
|
|
2022-05-20 07:12:18 +00:00
|
|
|
// Specify the work directory
|
2022-06-07 09:33:22 +00:00
|
|
|
workDir = "$scratch_dir/work"
|
2022-05-20 07:12:18 +00:00
|
|
|
|
|
|
|
// Perform work directory cleanup when the run has succesfully completed
|
2022-06-07 09:33:22 +00:00
|
|
|
// cleanup = true
|
2022-05-20 07:12:18 +00:00
|
|
|
|
2022-10-26 09:09:45 +00:00
|
|
|
// Reduce the job submit rate to about 30 per minute, this way the server won't be bombarded with jobs
|
2022-10-13 05:54:30 +00:00
|
|
|
// Limit queueSize to keep job rate under control and avoid timeouts
|
2022-05-20 07:12:18 +00:00
|
|
|
executor {
|
2022-10-26 09:07:14 +00:00
|
|
|
submitRateLimit = '30/1min'
|
2022-10-13 05:54:30 +00:00
|
|
|
queueSize = 50
|
2022-05-20 07:12:18 +00:00
|
|
|
}
|
|
|
|
|
2022-10-26 09:07:14 +00:00
|
|
|
// Add backoff strategy to catch cluster timeouts
|
|
|
|
process {
|
|
|
|
errorStrategy = { sleep(Math.pow(2, task.attempt) * 200 as long); return 'retry' }
|
|
|
|
maxRetries = 5
|
|
|
|
}
|
|
|
|
|
2022-05-20 07:12:18 +00:00
|
|
|
// Specify that singularity should be used and where the cache dir will be for the images
|
|
|
|
singularity {
|
|
|
|
enabled = true
|
|
|
|
autoMounts = true
|
2022-06-07 09:33:22 +00:00
|
|
|
cacheDir = "$scratch_dir/singularity"
|
2022-05-20 07:12:18 +00:00
|
|
|
}
|
|
|
|
|
2022-06-08 14:27:48 +00:00
|
|
|
env {
|
2022-06-08 14:28:28 +00:00
|
|
|
SINGULARITY_CACHEDIR="$scratch_dir/.singularity"
|
2022-06-08 14:27:48 +00:00
|
|
|
}
|
|
|
|
|
2022-05-20 07:12:18 +00:00
|
|
|
// Define profiles for each cluster
|
|
|
|
profiles {
|
|
|
|
skitty {
|
|
|
|
params {
|
|
|
|
config_profile_description = 'HPC_SKITTY profile for use on the Skitty cluster of the VSC HPC.'
|
2022-10-26 09:07:14 +00:00
|
|
|
config_profile_contact = 'ict@cmgg.be'
|
2022-05-20 07:12:18 +00:00
|
|
|
config_profile_url = 'https://www.ugent.be/hpc/en'
|
|
|
|
max_memory = 177.GB
|
|
|
|
max_cpus = 36
|
|
|
|
max_time = 72.h
|
|
|
|
}
|
|
|
|
|
|
|
|
process {
|
|
|
|
executor = 'slurm'
|
|
|
|
queue = 'skitty'
|
2022-06-07 09:33:22 +00:00
|
|
|
scratch = "$scratch_dir"
|
2022-05-20 07:12:18 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
swalot {
|
|
|
|
params {
|
|
|
|
config_profile_description = 'HPC_SWALOT profile for use on the Swalot cluster of the VSC HPC.'
|
2022-10-26 09:07:14 +00:00
|
|
|
config_profile_contact = 'ict@cmgg.be'
|
2022-05-20 07:12:18 +00:00
|
|
|
config_profile_url = 'https://www.ugent.be/hpc/en'
|
|
|
|
max_memory = 116.GB
|
|
|
|
max_cpus = 20
|
|
|
|
max_time = 72.h
|
|
|
|
}
|
|
|
|
|
|
|
|
process {
|
|
|
|
executor = 'slurm'
|
|
|
|
queue = 'swalot'
|
2022-06-07 09:33:22 +00:00
|
|
|
scratch = "$scratch_dir"
|
2022-05-20 07:12:18 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
victini {
|
|
|
|
params {
|
|
|
|
config_profile_description = 'HPC_VICTINI profile for use on the Victini cluster of the VSC HPC.'
|
2022-10-26 09:07:14 +00:00
|
|
|
config_profile_contact = 'ict@cmgg.be'
|
2022-05-20 07:12:18 +00:00
|
|
|
config_profile_url = 'https://www.ugent.be/hpc/en'
|
|
|
|
max_memory = 88.GB
|
|
|
|
max_cpus = 36
|
|
|
|
max_time = 72.h
|
|
|
|
}
|
|
|
|
|
|
|
|
process {
|
|
|
|
executor = 'slurm'
|
|
|
|
queue = 'victini'
|
2022-06-07 09:33:22 +00:00
|
|
|
scratch = "$scratch_dir"
|
2022-05-20 07:12:18 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
kirlia {
|
|
|
|
params {
|
|
|
|
config_profile_description = 'HPC_KIRLIA profile for use on the Kirlia cluster of the VSC HPC.'
|
2022-10-26 09:07:14 +00:00
|
|
|
config_profile_contact = 'ict@cmgg.be'
|
2022-05-20 07:12:18 +00:00
|
|
|
config_profile_url = 'https://www.ugent.be/hpc/en'
|
|
|
|
max_memory = 738.GB
|
|
|
|
max_cpus = 36
|
|
|
|
max_time = 72.h
|
|
|
|
}
|
|
|
|
|
|
|
|
process {
|
|
|
|
executor = 'slurm'
|
|
|
|
queue = 'kirlia'
|
2022-06-07 09:33:22 +00:00
|
|
|
scratch = "$scratch_dir"
|
2022-05-20 07:12:18 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
doduo {
|
|
|
|
params {
|
|
|
|
config_profile_description = 'HPC_DODUO profile for use on the Doduo cluster of the VSC HPC.'
|
2022-10-26 09:07:14 +00:00
|
|
|
config_profile_contact = 'ict@cmgg.be'
|
2022-05-20 07:12:18 +00:00
|
|
|
config_profile_url = 'https://www.ugent.be/hpc/en'
|
|
|
|
max_memory = 250.GB
|
|
|
|
max_cpus = 96
|
|
|
|
max_time = 72.h
|
|
|
|
}
|
|
|
|
|
|
|
|
process {
|
|
|
|
executor = 'slurm'
|
|
|
|
queue = 'doduo'
|
2022-06-07 09:33:22 +00:00
|
|
|
scratch = "$scratch_dir"
|
2022-05-20 07:12:18 +00:00
|
|
|
}
|
|
|
|
}
|
2022-10-13 05:54:30 +00:00
|
|
|
}
|