From subsecret
BWA Benchmark
BWA is a tool for mapping reads against a genome. This is nice for doing a non-synthetic benchmark, as meaningful work is done, and IO, Memory and CPU is all used.
BWA Setup instructions
- Install zlib devlopment libraries (dnf install zlib-devel, apt-get install zlib-dev)
- Retrieve https://sourceforge.net/projects/bio-bwa/files/bwa-0.6.2.tar.bz2/download
- Patch the Makefile:
- Add to DFLAGS: -std=gnu90 -D_NO_SSE2
- Compile BWA with command: make
- Patch the Makefile:
- Retrieve ftp://ftp.ncbi.nlm.nih.gov/genomes/all/GCF_000005845.2_ASM584v2/GCF_000005845.2_ASM584v2_genomic.fna.gz
- Retrieve https://s3.amazonaws.com/public.ged.msu.edu/ecoli_ref-5m-trim.fastq.gz
- Run bwa index GCF_000005845.2_ASM584v2_genomic.fna.gz
Running Benchmark
Benchmark command
- 1 thread
- bwa aln GCF_000005845.2_ASM584v2_genomic.fna.gz ecoli_ref-5m-trim.fastq.gz > /dev/null
- 4 threads
- bwa aln -t4 GCF_000005845.2_ASM584v2_genomic.fna.gz ecoli_ref-5m-trim.fastq.gz > /dev/null
Results
Device | ARCH | Kernel | OS | GCC | 1 thread walltime (sec.) | 4 thread walltime (sec.) |
---|---|---|---|---|---|---|
PC (i7-6700k@4.5 GHz) | x86 | 4.6.4-301.fc24.x86_64 | Fedora 24 | 6.1.1 | 144.221 | 53.833 |
PC (i7-6700k@4.5 GHz) | x64 | 4.6.4-301.fc24.x86_64 | Fedora 24 | 6.1.1 | 77.836 | 27.840 |
PC (i7-980x@4.0 GHz) | x64 | 4.6.4-301.fc24.x86_64 | Fedora 24 | 6.1.1 | 130.605 | 45.549 |
ODROID U2 | armhf | 3.8.13.30 | Ubuntu 14.04.4 LTS | 4.8.4 | 939.300 | 266.262 |
ODROID C2 | aarch64 | 3.14.65-73 | Ubuntu 16.04 LTS | 5.4.0 | 797.158 | 235.510 |
Raspberry Pi 3 | aarch64 | 4.6.4-1-main | Fedora 24 | 6.1.1 | 1521.175 | 486.585 |
Raspberry Pi 3 | armhf | 4.6.4-1-main | Fedora 24 | 6.1.1 | 2172.660 | 649.805 |
Raspberry Pi 3 | armhf | 4.4.13-v7+ | Raspbian Jessie | 4.9.2 | 1224.290 | 355.897 |
Orange PI one | armhf | 3.4.112 | armbian jessie desktop | 4.9.2 | 1677.26 | 486.256 |