-
Notifications
You must be signed in to change notification settings - Fork 273
/
cheaha.config
58 lines (47 loc) · 1.24 KB
/
cheaha.config
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
// Define the Scratch directory
def scratch_dir = System.getenv("USER_SCRATCH") ?: "/tmp"
params {
config_profile_name = 'cheaha'
config_profile_description = 'University of Alabama at Birmingham Cheaha HPC'
config_profile_contact = 'Lara Ianov ([email protected]) or Austyn Trull ([email protected])'
config_profile_url = 'https://www.uab.edu/cores/ircp/bds'
}
env {
TMPDIR="$scratch_dir"
SINGULARITY_TMPDIR="$scratch_dir"
}
singularity {
enabled = true
autoMounts = true
runOptions = "--contain --workdir $scratch_dir"
}
def getQueues = { time, memory ->
def queue_list = ["long"]
if (time <= 2.h) {
queue_list.add("express")
}
if (time <= 12.h) {
queue_list.add("short")
}
if (time <= 50.h) {
queue_list.add("medium")
}
if (memory >= 300.GB) {
queue_list.add("largemem-long")
if (time <= 50.h) {
queue_list.add("largemem")
}
}
return queue_list.join(",")
}
process {
resourceLimits = [
memory: 750.GB,
cpus: 128,
time: 150.h
]
executor = 'slurm'
maxRetries = 3
beforeScript = 'module load Singularity/3.5.2-GCC-5.4.0-2.26'
queue = { getQueues( task.time, task.memory ) }
}