-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathnextflow.config
105 lines (88 loc) · 2.09 KB
/
nextflow.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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
// Global default params, used in configs
params {
help = false
umap = false
n_pca_unintegrated = 30
check_val_every_n_epoch = 5
scib_max_obs = 500000
umap_seed = 123
}
// Singularity environment parameters
singularity {
enabled = true
autoMounts = true
cacheDir = '/nfs/cellgeni/singularity/images/'
runOptions = '-B /lustre,/nfs --nv' //--nv enables nvidia GPU support
}
// Configuring LSF job submission parameters for each process
executor {
name = 'lsf'
perJobMemLimit = true
}
process {
container = '/nfs/cellgeni/singularity/images/scvi_metrics.sif'
errorStrategy = 'retry'
maxRetries = 1
maxForks = 32
withName: parse_inputs {
cpus = { 1 * task.attempt }
memory = { 1.GB * task.attempt }
queue = 'normal'
}
withName: prune_adata {
cpus = { 1 * task.attempt }
queue = 'normal'
}
withName: run_scVI {
cpus = { 2 * task.attempt }
queue = 'gpu-normal'
clusterOptions = { ' -gpu "mode=shared:j_exclusive=no:gmem=6000:num=1"' }
}
withName: run_scib {
cpus = { 2 * task.attempt }
queue = 'normal'
}
withName: run_umap {
cpus = { 1 * task.attempt }
queue = 'normal'
}
withName: plot_history {
cpus = { 1 * task.attempt }
memory = { 1.GB * task.attempt }
queue = 'normal'
}
withName: plot_scib {
cpus = { 1 * task.attempt }
memory = { 8.GB * task.attempt }
queue = 'normal'
}
withName: plot_umap {
cpus = { 1 * task.attempt }
memory = { 8.GB * task.attempt }
queue = 'normal'
}
withName: combine_embedding {
cpus = { 1 * task.attempt }
queue = 'normal'
}
}
// Capture exit codes from upstream processes when piping
process.shell = ['/bin/bash', '-euo', 'pipefail']
// Capturing Nextflow log files into a reports directory
timeline {
enabled = true
file = "nf-reports/timeline.html"
overwrite = true
}
report {
enabled = true
file = "nf-reports/report.html"
overwrite = true
}
trace {
enabled = true
file = "nf-reports/trace.txt"
overwrite = true
}
// Ensures work directories and removed when pipeline completes
cleanup = true