Skip to content

Commit 833845b

Browse files
committed
Adding benchmark for markdup
1 parent 5f52f04 commit 833845b

File tree

4 files changed

+69
-5
lines changed

4 files changed

+69
-5
lines changed

INSTALL.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,3 +26,9 @@ and run our development setup (gold was added lately by ldc)
2626
make check
2727

2828
this way all dependencies are isolated.
29+
30+
## Build Sambamba with Debian
31+
32+
Make sure the environment is minimal with something like
33+
34+
env -i /bin/bash --login --noprofile --norc

Makefile

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -32,8 +32,8 @@ DFLAGS = -wi -I. -IBioD -g -J.
3232

3333
DLIBS = $(LIBRARY_PATH)/libphobos2-ldc.a $(LIBRARY_PATH)/libdruntime-ldc.a
3434
DLIBS_DEBUG = $(LIBRARY_PATH)/libphobos2-ldc-debug.a $(LIBRARY_PATH)/libdruntime-ldc-debug.a
35-
LIBS = htslib/libhts.a lz4/lib/liblz4.a -L-L$(LIBRARY_PATH) -L-lpthread -L-lm
36-
LIBS_STATIC = $(LIBRARY_PATH)/libc.a $(DLIBS) htslib/libhts.a $(LIBRARY_PATH)/liblz4.a
35+
LIBS = htslib/libhts.a lz4/lib/liblz4.a -L-L$(LIBRARY_PATH) -L-lpthread -L-lm -L-lz
36+
LIBS_STATIC = $(LIBRARY_PATH)/libc.a $(DLIBS) htslib/libhts.a $(LIBRARY_PATH)/liblz4.a -L-lz
3737
SRC = utils/ldc_version_info_.d utils/lz4.d utils/strip_bcf_header.d $(sort $(wildcard BioD/contrib/undead/*.d BioD/contrib/undead/*/*.d)) utils/version_.d $(sort $(wildcard thirdparty/*.d cram/*.d) $(wildcard BioD/bio/*/*.d BioD/bio/*/*/*.d BioD/bio/*/*/*/*.d BioD/bio/*/*/*/*/*.d) $(wildcard sambamba/*.d sambamba/*/*.d sambamba/*/*/*.d))
3838
OBJ = $(SRC:.d=.o)
3939
OUT = bin/sambamba-$(shell cat VERSION)
@@ -44,13 +44,13 @@ STATIC_LIB_PATH=-Lhtslib -Llz4
4444

4545
all: release
4646

47-
debug: DFLAGS += -O0 -d-debug -link-debuglib -L-lz
47+
debug: DFLAGS += -O0 -d-debug -link-debuglib
4848

4949
profile: DFLAGS += -fprofile-instr-generate=profile.raw
5050

5151
coverage: DFLAGS += -cov
5252

53-
release static pgo-static: DFLAGS += -O3 -release -enable-inlining -boundscheck=off
53+
release static pgo-static: DFLAGS += -O3 -release -enable-inlining -boundscheck=off -L-lz
5454

5555
static: DFLAGS += -static -L-Bstatic
5656

test/benchmark/stats.org

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
11
* Performance metrics
22

3+
Download the test BAM file from https://www.internationalgenome.org/
4+
5+
wget ftp://ftp.1000genomes.ebi.ac.uk/vol1/ftp/phase3/data/HG00100/alignment/HG00100.chrom20.ILLUMINA.bwa.GBR.low_coverage.20130415.bam
6+
7+
8+
39
** View
410
*** 4x Intel(R) Core(TM) i5-2520M CPU @ 2.50GHz (hyperthreaded)
511
**** sambamba 0.6.8-pre3
@@ -332,3 +338,55 @@ total time elapsed: 1 min 4 sec
332338
Page size (bytes): 4096
333339
Exit status: 0
334340
#+END_SRC
341+
342+
*** 8x Intel(R) Core(TM) i5-8250U CPU @ 1.60GHz (Thinkpad T480)
343+
344+
: /usr/bin/time --verbose ./bin/sambamba-0.7.1 "--DRT-gcopt=profile:1" markdup HG00100.chrom20.ILLUMINA.bwa.GBR.low_coverage.20130415.bam test.bam
345+
346+
**** sambamba 0.7.1
347+
348+
Commit 5f52f04aae3de1dce2d13b9e748002b4e513ded0
349+
350+
#+BEGIN_EXAMPLE
351+
by Artem Tarasov and Pjotr Prins (C) 2012-2019
352+
LDC 1.17.0 / DMD v2.087.1 / LLVM8.0.1 / bootstrap LDC - the LLVM D compiler (1.17.0)
353+
354+
finding positions of the duplicate reads in the file...
355+
sorted 3969781 end pairs
356+
and 73839 single ends (among them 22397 unmatched pairs)
357+
collecting indices of duplicate reads... done in 372 ms
358+
found 239673 duplicates
359+
collected list of positions in 0 min 6 sec
360+
marking duplicates...
361+
collected list of positions in 0 min 22 sec
362+
Number of collections: 107
363+
Total GC prep time: 10 milliseconds
364+
Total mark time: 548 milliseconds
365+
Total sweep time: 26 milliseconds
366+
Max Pause Time: 10 milliseconds
367+
Grand total GC time: 585 milliseconds
368+
GC summary: 1158 MB, 107 GC 585 ms, Pauses 558 ms < 10 ms
369+
Command being timed: "./bin/sambamba-0.7.1 --DRT-gcopt=profile:1 markdup HG00100.chrom20.ILLUMINA.bwa.GBR.low_coverage.20130415.bam test2.bam"
370+
User time (seconds): 136.00
371+
System time (seconds): 2.39
372+
Percent of CPU this job got: 583%
373+
Elapsed (wall clock) time (h:mm:ss or m:ss): 0:23.70
374+
Average shared text size (kbytes): 0
375+
Average unshared data size (kbytes): 0
376+
Average stack size (kbytes): 0
377+
Average total size (kbytes): 0
378+
Maximum resident set size (kbytes): 1282940
379+
Average resident set size (kbytes): 0
380+
Major (requiring I/O) page faults: 0
381+
Minor (reclaiming a frame) page faults: 396600
382+
Voluntary context switches: 199806
383+
Involuntary context switches: 5017
384+
Swaps: 0
385+
File system inputs: 16
386+
File system outputs: 1967376
387+
Socket messages sent: 0
388+
Socket messages received: 0
389+
Signals delivered: 0
390+
Page size (bytes): 4096
391+
Exit status: 0
392+
#+END_EXAMPLE

0 commit comments

Comments
 (0)