elPrep
elPrep optimizes the preparation of SAM and BAM files for variant calling pipelines by executing multiple preprocessing steps efficiently.
Key Features:
- Single-Pass Data Processing: Executes multiple preparation steps in a single pass through SAM/BAM data to avoid repeated reads.
- Multithreaded and In-Memory Execution: Runs as a multithreaded application operating primarily in memory to minimize file I/O.
- Merged Computations: Merges computations for filtering, sorting, marking duplicates, and reordering contigs to eliminate redundant processing.
- Performance Efficiency: Benchmarks report a five-step preparation pipeline on whole-exome BAM (NA12878) completes in ~15 minutes with elPrep versus ~1 hour 40 minutes with SAMtools and Picard, and whole-genome runtime reduced from ~24 hours to under 5 hours.
- Scalability and Cost-Effectiveness: Reduces aggregate computation time in large-scale clinical sequencing studies, decreasing overall analysis time and associated costs.
Scientific Applications:
- Variant Calling Pipelines: Preprocessing SAM/BAM files for downstream variant calling workflows.
- Large-Scale Genomic and Clinical Studies: Processing whole-exome and whole-genome sequencing datasets for population- and clinic-scale analyses.
- Disease Research and Personalized Medicine: Accelerating detection of genetic variation relevant to disease studies and individualized treatment decisions.
Methodology:
Implements single-pass, multithreaded, in-memory processing that merges filtering, sorting, duplicate marking, and contig reordering operations; development included benchmarking runtime and memory usage across C++, Go, and Java and selection of Go based on those benchmarks and maintainability considerations.
Topics
Details
- Tool Type:
- command-line tool
- Operating Systems:
- Linux
- Programming Languages:
- Python
- Added:
- 12/18/2017
- Last Updated:
- 11/24/2024
Operations
Publications
Herzeel C, Costanza P, Decap D, Fostier J, Reumers J. elPrep: High-Performance Preparation of Sequence Alignment/Map Files for Variant Calling. PLOS ONE. 2015;10(7):e0132868. doi:10.1371/journal.pone.0132868. PMID:26182406. PMCID:PMC4504710.
Costanza P, Herzeel C, Verachtert W. Comparing Ease of Programming in C++, Go, and Java for Implementing a Next-Generation Sequencing Tool. Evolutionary Bioinformatics. 2019;15. doi:10.1177/1176934319869015. PMID:31452597. PMCID:PMC6698987.