Skip to content

Commit 7110e5a

Browse files
author
Raymond Lim
committed
switch to using new python run script
1 parent f910860 commit 7110e5a

File tree

109 files changed

+953
-546
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

109 files changed

+953
-546
lines changed

Makefile.inc

+12-145
Original file line numberDiff line numberDiff line change
@@ -161,12 +161,9 @@ space +=
161161
$(space) :=
162162
$(space) +=
163163

164-
165-
166164
# $(call strip-suffix,filename)
167165
strip-suffix = $(firstword $(subst ., ,$(1)))
168166

169-
170167
LINK = ln -svf $(notdir $1) $(2) && touch $1
171168

172169
NOW := $(shell date +"%F")
@@ -188,164 +185,31 @@ QUEUE ?=
188185
189186
WALLTIMES = MEM SHORT LONG
190187
### PBS
191-
# mem for PBS: multiply mem_per_cpu by ncpu for request
192-
# $(call PBS_MEM,ncpu,mem_per_cpu)
193-
PBS_SHORT = -l mem=$2 -l walltime=1:00:00
194-
PBS_MEM = -l mem=$2 -l walltime=24:00:00
195-
PBS_LONG = -l mem=$2 -l walltime=128:00:00
196-
PBS_PARALLEL_MEM_WALLTIME = -l nodes=1:ppn=$1 -l walltime=$3 -l mem=$(shell unit=`echo $2 | sed 's/[^A-Za-z]//g'`; echo "$1 * $2" | sed 's/[A-Za-z]//g; s/\..*//;' | bc | sed 's/$$/'$$unit'/')
197-
PBS_PARALLEL_MEM = $(call PBS_PARALLEL_MEM_WALLTIME,$1,$3,12:00:00)
198-
PBS_PARALLEL_SHORT = $(call PBS_PARALLEL_MEM_WALLTIME,$1,$3,1:00:00)
199-
PBS_PARALLEL_LONG = $(call PBS_PARALLEL_MEM_WALLTIME,$1,$3,256:00:00)
200-
PBS_QSUB_ARGS = -o $(LOG) -j oe -d $(PWD)
201-
PBS_QSUB_SCRIPT = python modules/scripts/qsub_pbs.py
202-
PBS_DOCKER_MEM = -l mem=$2 -l walltime=24:00:00 -l nodes=1:docker -l mem=$2
203-
PBS_DOCKER_SHORT = -l mem=$2 -l walltime=1:00:00 -l nodes=1:docker -l mem=$2
204-
PBS_DOCKER_LONG = -l mem=$2 -l walltime=128:00:00 -l nodes=1:docker -l mem=$2
205-
PBS_DOCKER_PARALLEL_MEM_WALLTIME = -l nodes=1:docker:ppn=$1 -l walltime=$3 -l mem=$(shell unit=`echo $2 | sed 's/^[A-Za-z]//g'`; echo "$1 * $2" | sed 's/[A-Za-z]//g; s/\..*//;' | bc | sed 's/$$/'$$unit'/')
206-
PBS_DOCKER_PARALLEL_MEM = $(call PBS_DOCKER_PARALLEL_MEM_WALLTIME,$1,$3,12:00:00)
207-
PBS_DOCKER_PARALLEL_SHORT = $(call PBS_DOCKER_PARALLEL_MEM_WALLTIME,$1,$3,1:00:00)
208-
PBS_DOCKER_PARALLEL_LONG = $(call PBS_DOCKER_PARALLEL_MEM_WALLTIME,$1,$3,128:00:00)
209188
PBS_NODES = gpu-2-14 cpu-6-1 gpu-1-4
210189
211-
212190
#### SGE
213-
# mem for SGE
214-
# $(call SGE_MEM,ncpu,mem_per_cpu)
215191
SGE_PARALLEL_ENV = smp
216-
SGE_PARALLEL_MEM = -pe $(SGE_PARALLEL_ENV) $1 -l virtual_free=$2,h_vmem=$3
217-
SGE_PARALLEL_SHORT = $(SGE_PARALLEL_MEM)
218-
SGE_PARALLEL_LONG = $(SGE_PARALLEL_MEM)
219-
SGE_SHORT = $(SGE_MEM)
220-
SGE_MEM = -l virtual_free=$1,h_vmem=$2
221-
SGE_LONG = $(SGE_MEM)
222-
QSUB_PRIORITY ?= 0
223-
SGE_QSUB_ARGS = -V -wd $(PWD) -now n -notify -o $(LOG) -j y -S $(SHELL) -p $(QSUB_PRIORITY) -b n
224192
SGE_NODES = e01 e02 e06
225193
SGE_QSUB_SCRIPT = python modules/scripts/qsub.py
226194
227-
228-
229-
## DRMAA qsub script
230-
QSUB_SCRIPT_OPTS = -o $@ -s $($(CLUSTER_ENGINE)_NODES)
231-
QS = $($(CLUSTER_ENGINE)_QSUB_SCRIPT) $(QSUB_SCRIPT_OPTS) $1 --args $(foreach q,$(strip $2), -q $q)
232-
QSUB = $(call QS,,$(QUEUE))
233-
QSUB_QUEUE = $(call QS,,$1)
234-
# check output file for non-zero size
235-
QSUB_CHECK = $(call QS,-c)
236-
QSUB_CHECK_QUEUE = $(call QS,-c,-q $1)
237-
238-
239195
MAKE_PID := $(shell echo $$PPID)
240196
JOB_FLAG := $(filter -j%, $(subst -j ,-j,$(shell ps T | grep "^\s*$(MAKE_PID).*$(MAKE)")))
241197
JOBS := $(subst -j,,$(JOB_FLAG))
242198
243-
#### no cluster
244-
RUN_FIRST = umask $(UMASK); $(if $(and $(findstring true,$(USE_CLUSTER)),$(JOBS)),sleep $$[ ( $$RANDOM % 20 ) + 1 ]s;) $(MKDIRS)
245-
ECHO_FIRST = echo -n "umask $(UMASK); set -o pipefail; $(call ECHO_ACTIVATE_ENV,$(JRFLAB_MODULES_ENV)); ";
246-
ECHO_FIRST_ENV = echo -n "umask $(UMASK); set -o pipefail; $(call ECHO_ACTIVATE_ENV,$1); ";
247-
248199
# run locally
200+
RUN_FIRST = umask $(UMASK); $(if $(and $(findstring true,$(USE_CLUSTER)),$(JOBS)),sleep $$[ ( $$RANDOM % 20 ) + 1 ]s;) $(MKDIRS)
249201
INIT = $(RUN_FIRST); $(call ACTIVATE_ENV,$(JRFLAB_MODULES_ENV)); umask $(UMASK); set -o pipefail;
250202
INIT_ENV = $(RUN_FIRST); $(call ACTIVATE_ENV,$1); umask $(UMASK); set -o pipefail;
251203
252204
CLUSTER_ENGINE ?= SGE
253205
USE_CLUSTER ?= true
254-
ifeq ($(USE_CLUSTER),false)
255-
LSCRIPT = $(RUN_FIRST); ($(ECHO_FIRST) echo $1) | $(SHELL) >& $(LOG)
256-
LSCRIPT_ENV = $(RUN_FIRST); ($(call ECHO_FIRST_ENV,$1)) echo $2) | $(SHELL) >& $(LOG)
257-
LSCRIPT_PARALLEL_MEM = $(RUN_FIRST); ($(ECHO_FIRST) echo $4) | $(SHELL) >& $(LOG)
258-
LSCRIPT_ENV_PARALLEL_MEM = $(RUN_FIRST); ($(call ECHO_FIRST_ENV,$1) echo $5) | $(SHELL) >& $(LOG)
259-
LSCRIPT_PARALLEL_SHORT = $(LSCRIPT_PARALLEL_MEM)
260-
LSCRIPT_ENV_PARALLEL_SHORT = $(LSCRIPT_ENV_PARALLEL_MEM)
261-
LSCRIPT_PARALLEL_LONG = $(LSCRIPT_PARALLEL_MEM)
262-
LSCRIPT_ENV_PARALLEL_LONG = $(LSCRIPT_ENV_PARALLEL_MEM)
263-
LSCRIPT_MEM = $(RUN_FIRST); ($(ECHO_FIRST) echo $3) | $(SHELL) >& $(LOG)
264-
LSCRIPT_ENV_MEM = $(RUN_FIRST); ($(call ECHO_FIRST_ENV,$1) echo $4) | $(SHELL) >& $(LOG)
265-
LSCRIPT_SHORT = $(LSCRIPT_MEM)
266-
LSCRIPT_ENV_SHORT = $(LSCRIPT_ENV_MEM)
267-
LSCRIPT_LONG = $(LSCRIPT_MEM)
268-
LSCRIPT_ENV_LONG = $(LSCRIPT_ENV_MEM)
269-
LSCRIPT_CHECK = $(RUN_FIRST); ($(ECHO_FIRST) echo $1) | $(SHELL) >& $(LOG)
270-
LSCRIPT_ENV_CHECK = $(RUN_FIRST); ($(call ECHO_FIRST_ENV,$1) echo $2) | $(SHELL) >& $(LOG)
271-
LSCRIPT_CHECK_PARALLEL_MEM = $(RUN_FIRST) && ($(ECHO_FIRST) echo $4) | $(SHELL) >& $(LOG)
272-
LSCRIPT_ENV_CHECK_PARALLEL_MEM = $(RUN_FIRST) && ($(call ECHO_FIRST_ENV,$1) echo $5) | $(SHELL) >& $(LOG)
273-
LSCRIPT_CHECK_PARALLEL_SHORT = $(LSCRIPT_CHECK_PARALLEL_MEM)
274-
LSCRIPT_ENV_CHECK_PARALLEL_SHORT = $(LSCRIPT_ENV_CHECK_PARALLEL_MEM)
275-
LSCRIPT_CHECK_PARALLEL_LONG = $(LSCRIPT_CHECK_PARALLEL_MEM)
276-
LSCRIPT_ENV_CHECK_PARALLEL_LONG = $(LSCRIPT_ENV_CHECK_PARALLEL_MEM)
277-
LSCRIPT_CHECK_MEM = $(RUN_FIRST); ($(ECHO_FIRST) echo $3) | $(SHELL) >& $(LOG)
278-
LSCRIPT_ENV_CHECK_MEM = $(RUN_FIRST); ($(call ECHO_FIRST_ENV,$1) echo $4) | $(SHELL) >& $(LOG)
279-
LSCRIPT_CHECK_SHORT = $(LSCRIPT_CHECK_MEM)
280-
LSCRIPT_ENV_CHECK_SHORT = $(LSCRIPT_ENV_CHECK_MEM)
281-
LSCRIPT_CHECK_LONG = $(LSCRIPT_CHECK_MEM)
282-
LSCRIPT_ENV_CHECK_LONG = $(LSCRIPT_ENV_CHECK_MEM)
283-
LSCRIPT_NAMED = $(call LSCRIPT,$2)
284-
LSCRIPT_ENV_NAMED = $(call LSCRIPT_ENV,$1,$3)
285-
LSCRIPT_NAMED_PARALLEL_MEM = $(call LSCRIPT_PARALLEL_MEM,$2,$3,$4,$5)
286-
LSCRIPT_ENV_NAMED_PARALLEL_MEM = $(call LSCRIPT_ENV_PARALLEL_MEM,$1,$3,$4,$5,$6)
287-
LSCRIPT_NAMED_PARALLEL_SHORT = $(call LSCRIPT_PARALLEL_SHORT,$2,$3,$4,$5)
288-
LSCRIPT_ENV_NAMED_PARALLEL_SHORT = $(call LSCRIPT_ENV_PARALLEL_MEM,$1,$3,$4,$5,$6)
289-
LSCRIPT_NAMED_PARALLEL_LONG = $(call LSCRIPT_PARALLEL_LONG,$2,$3,$4,$5)
290-
LSCRIPT_ENV_NAMED_PARALLEL_LONG = $(call LSCRIPT_ENV_PARALLEL_MEM,$1,$3,$4,$5,$6)
291-
LSCRIPT_NAMED_MEM = $(call LSCRIPT_MEM,$2,$3,$4)
292-
LSCRIPT_ENV_NAMED_MEM = $(call LSCRIPT_ENV_MEM,$1,$3,$4,$5)
293-
LSCRIPT_NAMED_SHORT = $(LSCRIPT_NAMED_MEM)
294-
LSCRIPT_ENV_NAMED_SHORT = $(LSCRIPT_ENV_NAMED_MEM)
295-
LSCRIPT_NAMED_LONG = $(LSCRIPT_NAMED_MEM)
296-
LSCRIPT_ENV_NAMED_LONG = $(LSCRIPT_ENV_NAMED_MEM)
297-
LSCRIPT_CHECK_NAMED = $(call LSCRIPT,$2)
298-
LSCRIPT_ENV_CHECK_NAMED = $(call LSCRIPT_ENV,$1,$3)
299-
LSCRIPT_CHECK_NAMED_PARALLEL_MEM = $(call LSCRIPT_PARALLEL_MEM,$2,$3,$4,$5)
300-
LSCRIPT_CHECK_NAMED_PARALLEL_LONG = $(call LSCRIPT_PARALLEL_LONG,$2,$3,$4,$5)
301-
LSCRIPT_CHECK_NAMED_PARALLEL_SHORT = $(call LSCRIPT_PARALLEL_SHORT,$2,$3,$4,$5)
302-
LSCRIPT_ENV_CHECK_NAMED_PARALLEL_MEM = $(call LSCRIPT_ENV_PARALLEL_MEM,$1,$3,$4,$5,$6)
303-
LSCRIPT_ENV_CHECK_NAMED_PARALLEL_LONG = $(call LSCRIPT_ENV_PARALLEL_LONG,$1,$3,$4,$5,$6)
304-
LSCRIPT_ENV_CHECK_NAMED_PARALLEL_SHORT = $(call LSCRIPT_ENV_PARALLEL_SHORT,$1,$3,$4,$5,$6)
305-
LSCRIPT_CHECK_NAMED_MEM = $(call LSCRIPT_MEM,$2,$3,$4)
306-
LSCRIPT_CHECK_NAMED_SHORT = $(call LSCRIPT_SHORT,$2,$3,$4)
307-
LSCRIPT_CHECK_NAMED_LONG = $(call LSCRIPT_LONG,$2,$3,$4)
308-
LSCRIPT_ENV_CHECK_NAMED_MEM = $(call LSCRIPT_ENV_MEM,$1,$3,$4,$5)
309-
LSCRIPT_ENV_CHECK_NAMED_SHORT = $(call LSCRIPT_ENV_MEM,$1,$3,$4,$5)
310-
LSCRIPT_ENV_CHECK_NAMED_LONG = $(call LSCRIPT_ENV_MEM,$1,$3,$4,$5)
311-
else
312-
#$(call LS,qsub,name,qsub_args,script)
313-
LS = $(RUN_FIRST); (echo "umask $(UMASK); set -o pipefail; $(call ECHO_ACTIVATE_ENV,$(JRFLAB_MODULES_ENV));" $4) | $1 -N $(PROJECT_NAME)_$2 $3
314-
#$(call LS,env,qsub,name,qsub_args,script)
315-
LS_ENV = $(RUN_FIRST); (echo "umask $(UMASK); set -o pipefail; $(call ECHO_ACTIVATE_ENV,$1);" $5) | $2 -N $(PROJECT_NAME)_$3 $4
316-
$(foreach wt,$(WALLTIMES),\
317-
$(eval LSCRIPT_$(wt) = $$(call LSCRIPT_NAMED_$(wt),$$(@F),$$1,$$2,$$3)) \
318-
$(eval LSCRIPT_ENV_$(wt) = $$(call LSCRIPT_ENV_NAMED_$(wt),$$1,$$(@F),$$2,$$3,$$4)) \
319-
$(eval LSCRIPT_PARALLEL_$(wt) = $$(call LSCRIPT_NAMED_PARALLEL_$(wt),$$(@F),$$1,$$2,$$3,$$4)) \
320-
$(eval LSCRIPT_ENV_PARALLEL_$(wt) = $$(call LSCRIPT_ENV_NAMED_PARALLEL_$(wt),$$1,$$(@F),$$2,$$3,$$4,$$5)) \
321-
$(eval LSCRIPT_NAMED_PARALLEL_$(wt) = $$(call LS,$$(QSUB),$$1,$$($$(CLUSTER_ENGINE)_QSUB_ARGS) $$(call $$(CLUSTER_ENGINE)_PARALLEL_$(wt),$$2,$$3,$$4),$$5)) \
322-
$(eval LSCRIPT_ENV_NAMED_PARALLEL_$(wt) = $$(call LS_ENV,$$1,$$(QSUB),$$2,$$($$(CLUSTER_ENGINE)_QSUB_ARGS) $$(call $$(CLUSTER_ENGINE)_PARALLEL_$(wt),$$3,$$4,$$5),$$6)) \
323-
$(eval LSCRIPT_NAMED_$(wt) = $$(call LS,$$(QSUB),$$1,$$($$(CLUSTER_ENGINE)_QSUB_ARGS) $$(call $$(CLUSTER_ENGINE)_$(wt),$$2,$$3),$$4)) \
324-
$(eval LSCRIPT_ENV_NAMED_$(wt) = $$(call LS_ENV,$$1,$$(QSUB),$$2,$$($$(CLUSTER_ENGINE)_QSUB_ARGS) $$(call $$(CLUSTER_ENGINE)_$(wt),$$3,$$4),$$5)) \
325-
$(eval LSCRIPT_CHECK_PARALLEL_$(wt) = $$(call LSCRIPT_CHECK_NAMED_PARALLEL_$(wt),$$(@F),$$1,$$2,$$3,$$4)) \
326-
$(eval LSCRIPT_ENV_CHECK_PARALLEL_$(wt) = $$(call LSCRIPT_ENV_CHECK_NAMED_PARALLEL_$(wt),$$1,$$(@F),$$2,$$3,$$4,$$5)) \
327-
$(eval LSCRIPT_CHECK_$(wt) = $$(call LSCRIPT_CHECK_NAMED_$(wt),$$(@F),$$1,$$2,$$3)) \
328-
$(eval LSCRIPT_ENV_CHECK_$(wt) = $$(call LSCRIPT_ENV_CHECK_NAMED_$(wt),$$1,$$(@F),$$2,$$3,$$4)) \
329-
$(eval LSCRIPT_DOCKER_PARALLEL_$(wt) = $$(call LSCRIPT_DOCKER_NAMED_PARALLEL_$(wt),$$(@F),$$1,$$2,$$3,$$4)) \
330-
$(eval LSCRIPT_DOCKER_$(wt) = $$(call LSCRIPT_DOCKER_NAMED_$(wt),$$(@F),$$1,$$2,$$3)) \
331-
$(eval LSCRIPT_CHECK_NAMED_PARALLEL_$(wt) = $$(call LS,$$(QSUB_CHECK),$$1,$$($$(CLUSTER_ENGINE)_QSUB_ARGS) $$(call $$(CLUSTER_ENGINE)_PARALLEL_$(wt),$$2,$$3,$$4),$$5)) \
332-
$(eval LSCRIPT_ENV_CHECK_NAMED_PARALLEL_$(wt) = $$(call LS_ENV,$$1,$$(QSUB_CHECK),$$3,$$($$(CLUSTER_ENGINE)_QSUB_ARGS) $$(call $$(CLUSTER_ENGINE)_PARALLEL_$(wt),$$3,$$4,$$5),$$6)) \
333-
$(eval LSCRIPT_DOCKER_NAMED_PARALLEL_$(wt) = $$(call LS,$$(QSUB),$$1,$$($$(CLUSTER_ENGINE)_QSUB_ARGS) $$(call $$(CLUSTER_ENGINE)_DOCKER_PARALLEL_$(wt),$$2,$$3,$$4),$$5)) \
334-
$(eval LSCRIPT_CHECK_NAMED_$(wt) = $$(call LS,$$(QSUB_CHECK),$$1,$$($$(CLUSTER_ENGINE)_QSUB_ARGS) $$(call $$(CLUSTER_ENGINE)_$(wt),$$2,$$3),$$4)) \
335-
$(eval LSCRIPT_ENV_CHECK_NAMED_$(wt) = $$(call LS_ENV,$$1,$$(QSUB_CHECK),$$2,$$($$(CLUSTER_ENGINE)_QSUB_ARGS) $$(call $$(CLUSTER_ENGINE)_$(wt),$$3,$$4),$$5)) \
336-
$(eval LSCRIPT_DOCKER_NAMED_$(wt) = $$(call LS,$$(QSUB_CHECK),$$1,$$($$(CLUSTER_ENGINE)_QSUB_ARGS) $$(call $$(CLUSTER_ENGINE)_DOCKER_$(wt),$$2,$$3),$$4)))
337-
338-
LSCRIPT = $(call LSCRIPT_NAMED_MEM,$(@F),1G,2G,$1)
339-
LSCRIPT_ENV = $(call LSCRIPT_ENV_NAMED_MEM,$1,$(@F),1G,2G,$2)
340-
LSCRIPT_NAMED = $(call LS,$(QSUB),$1,$($(CLUSTER_ENGINE)_QSUB_ARGS) $(call $(CLUSTER_ENGINE)_MEM,1G,2G),$2)
341-
LSCRIPT_ENV_NAMED = $(call LS_ENV,$1,$(QSUB),$2,$($(CLUSTER_ENGINE)_QSUB_ARGS) $(call $(CLUSTER_ENGINE)_MEM,1G,2G),$3)
342-
343-
LSCRIPT_CHECK = $(call LSCRIPT_CHECK_NAMED,$(@F),$1)
344-
LSCRIPT_ENV_CHECK = $(call LSCRIPT_ENV_CHECK_NAMED,$1,$(@F),$2)
345-
346-
LSCRIPT_CHECK_NAMED = $(call LS,$(QSUB_CHECK),$1,$($(CLUSTER_ENGINE)_QSUB_ARGS) $(call $(CLUSTER_ENGINE)_MEM,1G,2G),$2)
347-
LSCRIPT_ENV_CHECK_NAMED = $(call LS_ENV,$1,$(QSUB_CHECK),$2,$($(CLUSTER_ENGINE)_QSUB_ARGS) $(call $(CLUSTER_ENGINE)_MEM,1G,2G),$3)
348-
endif
206+
207+
RUN_OPTS = $(if $(findstring false,$(USE_CLUSTER)),-l) -o $@ $(if $(CLUSTER_ENGINE),-g $(CLUSTER_ENGINE)) \
208+
--default_env $(JRFLAB_MODULES_ENV) -S $(SHELL) \
209+
--log_file $(LOG) $(if $($(CLUSTER_ENGINE)_NODES),--servers $($(CLUSTER_ENGINE)_NODES)) \
210+
$(if $(PROJECT_NAME),-p $(PROJECT_NAME))
211+
#usage $(call RUN,args,script)
212+
RUN = echo $2 | python modules/scripts/run.py $(RUN_OPTS) $1
349213
350214
#MD5 = md5sum $(1:.md5=) > $1
351215
MD5 = md5sum $(@:.md5=) > $@
@@ -385,10 +249,13 @@ ifeq ($(USE_CLUSTER),true)
385249
ifeq ($(CLUSTER_ENGINE),SGE)
386250
export DRMAA_LIBRARY_PATH = /common/sge/lib/lx24-amd64/libdrmaa.so.1.0
387251
else
252+
ifeq ($(CLUSTER_ENGINE),LSF)
253+
export DRMAA_LIBRARY_PATH = /admin/lsf/10.1/linux3.10-glibc2.17-x86_64/lib/libdrmaa.so
254+
else
388255
export DRMAA_LIBRARY_PATH = /opt/torque/lib/libdrmaa.so.1
389256
endif
390257
endif
391-
258+
endif
392259
393260
endif
394261
MAKEFILE_INC = true

aligners/align.mk

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ $(foreach sample,$(SAMPLES),\
99

1010
define merged-bam
1111
$$(ALIGNER)/bam/$1.$$(ALIGNER).sorted.bam : $$(ALIGNER)/sam/$1.header.sam $$(foreach split,$2,$$(ALIGNER)/bam/$$(split).$$(ALIGNER).sorted.bam)
12-
$$(call LSCRIPT_MEM,12G,15G,"$$(SAMTOOLS) merge -f -h $$< $$(@) $$(filter %.bam,$$^) && $$(RM) $$^")
12+
$$(call RUN,-s 12G -m 15G,"$$(SAMTOOLS) merge -f -h $$< $$(@) $$(filter %.bam,$$^) && $$(RM) $$^")
1313
endef
1414
define rename-bam
1515
$$(ALIGNER)/bam/$1.$$(ALIGNER).bam : $$(ALIGNER)/bam/$2.$$(ALIGNER).bam

aligners/bowtieAligner.mk

+4-4
Original file line numberDiff line numberDiff line change
@@ -41,22 +41,22 @@ bowtie_bams : $(BAMS) $(addsuffix .bai,$(BAMS))
4141

4242
# memory for human genome: ~3.2G
4343
bowtie/bam/%.bwt.bam : fastq/%.1.fastq.gz fastq/%.2.fastq.gz
44-
$(call LSCRIPT_PARALLEL_MEM,4,1G,1.5G,"LBID=`echo \"$*\" | sed 's/_[A-Za-z0-9]\+//'`; \
44+
$(call RUN,-n 4 -s 1G -m 1.5G,"LBID=`echo \"$*\" | sed 's/_[A-Za-z0-9]\+//'`; \
4545
$(BOWTIE) $(BOWTIE_OPTS) --rg-id $* --rg \"LB:\$${LBID}\" --rg \"PL:${SEQ_PLATFORM}\" --rg \"SM:\$${LBID}\" -p $(NUM_CORES) \
4646
-1 $< -2 $(<<) | $(SAMTOOLS) view -bhS - > $(@)")
4747

4848
bowtie/bam/%.bwt.bam : fastq/%.fastq.gz
49-
$(call LSCRIPT_PARALLEL_MEM,4,1G,1.5G,"LBID=`echo \"$*\" | sed 's/_[A-Za-z0-9]\+//'`; \
49+
$(call RUN,-n 4 -s 1G -m 1.5G,"LBID=`echo \"$*\" | sed 's/_[A-Za-z0-9]\+//'`; \
5050
$(BOWTIE) $(BOWTIE_OPTS) --rg-id $* --rg \"LB:\$${LBID}\" --rg \"PL:${SEQ_PLATFORM}\" --rg \"SM:\$${LBID}\" -p $(NUM_CORES) \
5151
-U $(<) | $(SAMTOOLS) view -bhS - > $(@) ")
5252

5353

5454
bam/%.bam : bowtie/bam/%.bwt.$(BAM_SUFFIX)
55-
$(call LSCRIPT,"ln -f $(<) $(@) ")
55+
$(call RUN,,"ln -f $(<) $(@) ")
5656

5757
define align-split-fastq
5858
bowtie/bam/$2.bwt.bam : $3
59-
$$(call LSCRIPT_PARALLEL_MEM,4,1G,1.5G,"$$(BOWTIE) $$(BOWTIE_OPTS) \
59+
$$(call RUN,-n 4 -s 1G -m 1.5G,"$$(BOWTIE) $$(BOWTIE_OPTS) \
6060
--rg-id $2 --rg \"LB:$1\" --rg \"PL:$${SEQ_PLATFORM}\" --rg \"SM:$1\" \
6161
-p $$(NUM_CORES) $$(if $$(<<),-1 $$(<) -2 $$(<<),-U $$<) | $$(SAMTOOLS) view -bhS - > $$(@)")
6262
endef

aligners/bwaAligner.mk

+6-6
Original file line numberDiff line numberDiff line change
@@ -34,14 +34,14 @@ BWA_BAMS = $(foreach sample,$(SAMPLES),bam/$(sample).bam)
3434
bwa : $(addsuffix ,$(BWA_BAMS)) $(addsuffix .bai,$(BWA_BAMS))
3535

3636
bam/%.bam : bwa/bam/%.bwa.$(BAM_SUFFIX)
37-
$(call LSCRIPT,"ln -f $(<) $(@) ")
37+
$(call RUN,,"ln -f $(<) $(@) ")
3838

3939
ifdef SPLIT_SAMPLES
4040

4141
.SECONDEXPANSION:
4242
define sai-split-fastq-pair
4343
bwa/sai/$1.$3.sai : $2
44-
$$(call LSCRIPT_PARALLEL_MEM,8,1G,1.2G,"$$(BWA) aln $$(BWA_ALN_OPTS) -t 8 $$(REF_FASTA) $$(<) > $$(@)")
44+
$$(call RUN,-n 8 -s 1G -m 1.2G,"$$(BWA) aln $$(BWA_ALN_OPTS) -t 8 $$(REF_FASTA) $$(<) > $$(@)")
4545
endef
4646
$(foreach ss,$(SPLIT_SAMPLES), \
4747
$(if $(fq.$(ss)),\
@@ -50,22 +50,22 @@ $(foreach ss,$(SPLIT_SAMPLES), \
5050

5151
define align-split-fastq
5252
bwa/bam/$2.bwa.bam : bwa/sai/$2.1.sai bwa/sai/$2.2.sai $3
53-
$$(call LSCRIPT_MEM,4G,10G,"$$(BWA) sampe -P -r \"@RG\tID:$2\tLB:$1\tPL:$${SEQ_PLATFORM}\tSM:$1\" $$(REF_FASTA) $$^ | $$(SAMTOOLS) view -bhS - > $$@")
53+
$$(call RUN,-s 4G -m 10G,"$$(BWA) sampe -P -r \"@RG\tID:$2\tLB:$1\tPL:$${SEQ_PLATFORM}\tSM:$1\" $$(REF_FASTA) $$^ | $$(SAMTOOLS) view -bhS - > $$@")
5454
endef
5555
$(foreach ss,$(SPLIT_SAMPLES),\
5656
$(if $(fq.$(ss)),\
5757
$(eval $(call align-split-fastq,$(split.$(ss)),$(ss),$(fq.$(ss))))))
5858
endif
5959

6060
bwa/sai/%.sai : fastq/%.fastq.gz
61-
$(call LSCRIPT_PARALLEL_MEM,8,1G,1.2G,"$(BWA) aln $(BWA_ALN_OPTS) -t 8 $(REF_FASTA) $(<) > $(@) ")
61+
$(call RUN,-n 8 -s 1G -m 1.2G,"$(BWA) aln $(BWA_ALN_OPTS) -t 8 $(REF_FASTA) $(<) > $(@) ")
6262

6363
bwa/bam/%.bwa.bam : bwa/sai/%.1.sai bwa/sai/%.2.sai fastq/%.1.fastq.gz fastq/%.2.fastq.gz
6464
LBID=`echo "$*" | sed 's/_[A-Za-z0-9]\+//'`; \
65-
$(call LSCRIPT_MEM,4G,10G,"$(BWA) sampe -P -r \"@RG\tID:$*\tLB:$${LBID}\tPL:${SEQ_PLATFORM}\tSM:$${LBID}\" $(REF_FASTA) $(^) | $(SAMTOOLS) view -bhS - > $(@) ")
65+
$(call RUN,-s 4G -m 10G,"$(BWA) sampe -P -r \"@RG\tID:$*\tLB:$${LBID}\tPL:${SEQ_PLATFORM}\tSM:$${LBID}\" $(REF_FASTA) $(^) | $(SAMTOOLS) view -bhS - > $(@) ")
6666

6767
fastq/%.fastq.gz : fastq/%.fastq
68-
$(call LSCRIPT,"gzip -c $< > $(@) && $(RM) $< ")
68+
$(call RUN,,"gzip -c $< > $(@) && $(RM) $< ")
6969

7070

7171
include modules/bam_tools/processBam.mk

aligners/bwamemAligner.mk

+5-5
Original file line numberDiff line numberDiff line change
@@ -39,25 +39,25 @@ BWA_BAMS = $(foreach sample,$(SAMPLES),bam/$(sample).bam)
3939
bwamem : $(BWA_BAMS) $(addsuffix .bai,$(BWA_BAMS))
4040

4141
bam/%.bam : bwamem/bam/%.bwamem.$(BAM_SUFFIX)
42-
$(call LSCRIPT,"ln -f $(<) $(@)")
42+
$(call RUN,,"ln -f $(<) $(@)")
4343

4444
#$(call align-split-fastq,name,split-name,fastqs)
4545
define align-split-fastq
4646
bwamem/bam/$2.bwamem.bam : $3
47-
$$(call LSCRIPT_PARALLEL_MEM,$$(BWAMEM_THREADS),1G,$$(BWAMEM_MEM_PER_THREAD),"$$(BWA) mem -t $$(BWAMEM_THREADS) $$(BWA_ALN_OPTS) -R \"@RG\tID:$2\tLB:$1\tPL:$${SEQ_PLATFORM}\tSM:$1\" $$(BWAMEM_REF_FASTA) $$^ | $$(SAMTOOLS) view -bhS - > $$@")
47+
$$(call RUN,-n $$(BWAMEM_THREADS) -s 1G -m $$(BWAMEM_MEM_PER_THREAD),"$$(BWA) mem -t $$(BWAMEM_THREADS) $$(BWA_ALN_OPTS) -R \"@RG\tID:$2\tLB:$1\tPL:$${SEQ_PLATFORM}\tSM:$1\" $$(BWAMEM_REF_FASTA) $$^ | $$(SAMTOOLS) view -bhS - > $$@")
4848
endef
4949
$(foreach ss,$(SPLIT_SAMPLES),$(if $(fq.$(ss)),$(eval $(call align-split-fastq,$(split.$(ss)),$(ss),$(fq.$(ss))))))
5050

5151
bwamem/bam/%.bwamem.bam : fastq/%.1.fastq.gz fastq/%.2.fastq.gz
5252
LBID=`echo "$*" | sed 's/_[A-Za-z0-9]\+//'`; \
53-
$(call LSCRIPT_PARALLEL_MEM,$(BWAMEM_THREADS),1G,$(BWAMEM_MEM_PER_THREAD),"$(BWA) mem -t $(BWAMEM_THREADS) $(BWA_ALN_OPTS) -R \"@RG\tID:$*\tLB:$${LBID}\tPL:${SEQ_PLATFORM}\tSM:$${LBID}\" $(BWAMEM_REF_FASTA) $^ | $(SAMTOOLS) view -bhS - > $@")
53+
$(call RUN,-n $(BWAMEM_THREADS) -s 1G -m $(BWAMEM_MEM_PER_THREAD),"$(BWA) mem -t $(BWAMEM_THREADS) $(BWA_ALN_OPTS) -R \"@RG\tID:$*\tLB:$${LBID}\tPL:${SEQ_PLATFORM}\tSM:$${LBID}\" $(BWAMEM_REF_FASTA) $^ | $(SAMTOOLS) view -bhS - > $@")
5454

5555
bwamem/bam/%.bwamem.bam : fastq/%.fastq.gz
5656
LBID=`echo "$*" | sed 's/_[A-Za-z0-9]\+//'`; \
57-
$(call LSCRIPT_PARALLEL_MEM,$(BWAMEM_THREADS),1G,$(BWAMEM_MEM_PER_THREAD),"$(BWA) mem -t $(BWAMEM_THREADS) $(BWA_ALN_OPTS) -R \"@RG\tID:$*\tLB:$${LBID}\tPL:${SEQ_PLATFORM}\tSM:$${LBID}\" $(BWAMEM_REF_FASTA) $^ | $(SAMTOOLS) view -bhS - > $@")
57+
$(call RUN,-n $(BWAMEM_THREADS) -s 1G -m $(BWAMEM_MEM_PER_THREAD),"$(BWA) mem -t $(BWAMEM_THREADS) $(BWA_ALN_OPTS) -R \"@RG\tID:$*\tLB:$${LBID}\tPL:${SEQ_PLATFORM}\tSM:$${LBID}\" $(BWAMEM_REF_FASTA) $^ | $(SAMTOOLS) view -bhS - > $@")
5858

5959
fastq/%.fastq.gz : fastq/%.fastq
60-
$(call LSCRIPT,"gzip -c $< > $(@) && $(RM) $<")
60+
$(call RUN,,"gzip -c $< > $(@) && $(RM) $<")
6161

6262
include modules/bam_tools/processBam.mk
6363
include modules/fastq_tools/fastq.mk

aligners/hisatAligner.mk

+2-2
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ bam/%.bam : hisat/bam/%.hisat.$(BAM_SUFFIX)
3737
$(INIT) ln -f $(<) $(@)
3838

3939
hisat/bam/%.hisat.bam hisat/unmapped_bam/%.hisat_unmapped.bam : fastq/%.1.fastq.gz fastq/%.2.fastq.gz
40-
$(call LSCRIPT_NAMED_PARALLEL_MEM,$*_hisat,8,1G,1.5G,"mkdir -p hisat/bam hisat/unmapped_bam; \
40+
$(call RUN,-N $*_hisat -n 8 -s 1G -m 1.5G,"mkdir -p hisat/bam hisat/unmapped_bam; \
4141
LBID=`echo \"$*\" | sed 's/_.\+//'`; \
4242
$(HISAT) $(HISAT_OPTS) \
4343
--rg-id $* --rg \"SM:\$${LBID}\" \
@@ -49,7 +49,7 @@ hisat/bam/%.hisat.bam hisat/unmapped_bam/%.hisat_unmapped.bam : fastq/%.1.fastq.
4949
# usage $(eval $(call align-merged-split-fastq,merged-sample,split,fastq(s)))
5050
define align-merged-split-fastq
5151
hisat/bam/$2.hisat.bam : $3
52-
$$(call LSCRIPT_NAMED_PARALLEL_MEM,$2_hisat,8,1G,1.5G,"mkdir -p hisat/bam hisat/unmapped_bam; \
52+
$$(call RUN,-N $2_hisat -n 8 -s 1G -m 1.5G,"mkdir -p hisat/bam hisat/unmapped_bam; \
5353
$$(HISAT) $$(HISAT_OPTS) \
5454
--rg-id $2 --rg \"SM:$1\" \
5555
--rg PL:$${SEQ_PLATFORM} --rg \"LB:\$1\" \

aligners/starAligner.mk

+2-2
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ star_chimeric_junctions : $(foreach sample,$(SAMPLES),star/$(sample).Chimeric.ou
3434

3535
define align-split-fastq
3636
star/$2.star_align_timestamp : $3
37-
$$(call LSCRIPT_PARALLEL_MEM,4,6G,10G,"$$(STAR) $$(STAR_OPTS) \
37+
$$(call RUN,-n 4 -s 6G -m 10G,"$$(STAR) $$(STAR_OPTS) \
3838
--outFileNamePrefix star/$2. --runThreadN 4 \
3939
--outSAMattrRGline \"ID:$2\" \"LB:$1\" \"SM:$1\" \"PL:$${SEQ_PLATFORM}\" \
4040
--readFilesIn $$^ --readFilesCommand zcat && touch $$@")
@@ -46,7 +46,7 @@ $(foreach ss,$(SPLIT_SAMPLES),\
4646
$(eval $(call align-split-fastq,$(split.$(ss)),$(ss),$(fq.$(ss))))))
4747

4848
star/%.Aligned.sortedByCoord.out.bam star/%.Chimeric.out.junction : fastq/%.1.fastq.gz fastq/%.2.fastq.gz
49-
$(call LSCRIPT_PARALLEL_MEM,4,6G,10G,"$(STAR) $(STAR_OPTS) \
49+
$(call RUN,-n 4 -s 6G -m 10G,"$(STAR) $(STAR_OPTS) \
5050
--outFileNamePrefix star/$*. --runThreadN 4 \
5151
--outSAMattrRGline \"ID:$*\" \"LB:$*\" \"SM:$*\" \"PL:${SEQ_PLATFORM}\" \
5252
--readFilesIn $^ --readFilesCommand zcat")

0 commit comments

Comments
 (0)