Sassy: Fuzzy Searching DNA Sequences using SIMD
Abstract
MotivationApproximate string matching (ASM) is the problem of finding all occurrences of a pattern in a text while allowing up to k errors. Many modern methods use seed-chain-extend, which is fast in practice, but does not guarantee finding all matches with [≤] k errors. However, applications such as CRISPR off-target detection require exhaustive results. MethodsWe introduce Sassy, a library and tool for ASM of short patterns in long texts. Sassy splits the text into 4 parts that are searched in parallel, and uses bitvectors in the text direction rather than the pattern direction. This has compexity O(k{lceil}n/W {rciel}) when searching a random text of length n, where W = 256 is the SIMD width, and provides significant speedups for small k. Separately, we allow matches of the pattern to extend beyond the text for an overhang cost of e.g. = 0.5 per character, to find matches near contig or read ends. ResultsSassy is 4x to 15x faster than Edlib for patterns [≤] 1000bp, and can search text with a throughput near 2 Gbp/s. Likewise, Sassy is over 100x faster than parasail. We apply Sassy to CRISPR off-target detection by searching 61 guide sequences in a human genome. Sassy is 100x faster than SWOffinder and only slightly slower (for k [≤] 3) than CHOPOFF, for which building its index takes 20 minutes. Sassy also scales well to larger k, unlike CHOPOFF whose index took over 10 hours to build for k = 5. AvailibilitySassy is available as library and binary at https://github.com/RagnarGrootKoerkamp/sassy, and archived at swh:1:dir:e884758dce5777a441bc2799dc8824e563c5f97b.
02 /Specification & Classification
Click any tag to browse matching papers- Citations
- 5
- FWCI
- 6.79
- Field percentile
- top 3%
- Organism
- Assay
- Research Focus
- Approach
Reproducibility ledger
Nobody has reported trying to reproduce this paper yet. Did you replicate an experiment or run the code? Your report saves the next lab a week.
Sign in to file a reproducibility report.
Related papers
- Sassy2: Batch Searching of Short DNA Patterns
Rick Beeloo, Ragnar Groot Koerkamp·bioRxiv·Mar 12, 2026
- Optimum Search Schemes for Approximate String Matching Using Bidirectional FM-Index
Kiavash Kianfar, Christopher Pockrandt, … Knut Reinert·bioRxiv·Apr 14, 2018
- SW#db: GPU-accelerated exact sequence similarity database search
Matija Korpar, Martin Sosic, … Mile Sikic·bioRxiv·Jan 14, 2015
- An optimized FM-index library for nucleotide and amino acid search
Tim Anderson, Travis J. Wheeler·Algorithms for Molecular BiologyPeer-reviewed·Dec 1, 2021
- A massively parallel algorithm for finding non-existing sequences in genomes
Marco Falda·bioRxiv·Jul 20, 2019
- Efficient Seeding for Error-Prone Sequences with SubseqHash2
Xiang Li, Ke Chen, Mingfu Shao·BioinformaticsPeer-reviewed·Jul 23, 2025