Preprint
Machine Learning
Featured

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

Shifu Chen(Shenzhen Institutes of Advanced Technology), Yanqing Zhou, Yaru Chen, Jia Gu(Shenzhen Institutes of Advanced Technology)
July 7, 2018Bioinformatics30,670 citations

31k

Citations

5.8k

Influential Citations

Bioinformatics

Venue

2018

Year

Abstract

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.

Analysis

Why This Paper Matters

This paper addresses a critical bottleneck in bioinformatics: the preprocessing of FASTQ files, which are the raw output of high-throughput sequencing. Traditionally, researchers had to use multiple tools (e.g., FastQC for quality control, Trimmomatic for adapter trimming, and others for filtering), each requiring separate reads of large data files. This not only slows down the pipeline but also increases I/O overhead. fastp solves this by integrating all these operations into a single tool that scans the data only once, drastically reducing runtime and simplifying workflows.

The significance is underscored by its massive citation count (over 30,000), indicating that it has become a de facto standard in the field. For AI practitioners working on genomic data, fastp provides a reliable and efficient preprocessing step that is essential for downstream machine learning models, which require clean and consistent input data. Its speed enables processing of large-scale datasets that would otherwise be infeasible.

Technical Contributions

  • All-in-one design: Combines quality control, adapter trimming, quality filtering, and per-read quality pruning into a single tool, eliminating the need for multiple tools and multiple data passes.
  • Single-pass scanning: Processes all operations in one scan of the FASTQ file, minimizing I/O and improving efficiency.
  • C++ implementation with multi-threading: Leverages C++ for performance and supports multi-threading to utilize modern multi-core CPUs effectively.
  • Comprehensive QC metrics: Generates detailed quality control reports, including per-base quality, GC content, and adapter contamination, which are crucial for data validation.
  • Open-source availability: The tool is freely available on GitHub, encouraging community contributions and adoption.

Results

The paper reports that fastp is 2-5 times faster than Trimmomatic and Cutadapt, two widely used preprocessing tools. This speed advantage is achieved while performing a broader range of operations, making it a more efficient and comprehensive solution. The evaluation likely involved typical FASTQ datasets, and the speedup is attributed to the single-pass design and efficient C++ implementation. While specific benchmark numbers are not detailed in the abstract, the consistent speedup across comparisons highlights its practical utility.

Significance

The broader impact of fastp extends beyond bioinformatics. It demonstrates the value of optimizing data preprocessing pipelines, which is a common challenge in AI and data science. By reducing preprocessing time, fastp enables faster iteration in research and allows scientists to handle larger datasets. Its success also encourages the development of similar integrated tools in other domains, promoting efficiency and standardization. For AI practitioners, fastp exemplifies how domain-specific optimization can lead to widespread adoption and significant improvements in workflow productivity.