fastp: an ultra-fast all-in-one FASTQ preprocessor

S Chen, Y Zhou, Y Chen, J Gu - Bioinformatics, 2018 - academic.oup.com
S Chen, Y Zhou, Y Chen, J Gu
Bioinformatics, 2018academic.oup.com
Motivation Quality control and preprocessing of FASTQ files are essential to providing clean
data for downstream analysis. Traditionally, a different tool is used for each operation, such
as quality control, adapter trimming and quality filtering. These tools are often insufficiently
fast as most are developed using high-level programming languages (eg Python and Java)
and provide limited multi-threading support. Reading and loading data multiple times also
renders preprocessing slow and I/O inefficient. Results We developed fastp as an ultra-fast …
Motivation
Quality control and preprocessing of FASTQ files are essential to providing clean data for downstream analysis. Traditionally, a different tool is used for each operation, such as quality control, adapter trimming and quality filtering. These tools are often insufficiently fast as most are developed using high-level programming languages (e.g. Python and Java) and provide limited multi-threading support. Reading and loading data multiple times also renders preprocessing slow and I/O inefficient.
Results
We developed fastp as an ultra-fast FASTQ preprocessor with useful quality control and data-filtering features. It can perform quality control, adapter trimming, quality filtering, per-read quality pruning and many other operations with a single scan of the FASTQ data. This tool is developed in C++ and has multi-threading support. Based on our evaluation, fastp is 2–5 times faster than other FASTQ preprocessing tools such as Trimmomatic or Cutadapt despite performing far more operations than similar tools.
Availability and implementation
The open-source code and corresponding instructions are available at https://github.com/OpenGene/fastp.
Oxford University Press