Skip to content

bwa-rust内存安全的 BWA-MEM 风格单端比对器

Rust 2021 实现,从 FASTA/FASTQ 到 FM-index、SMEM、链、Smith-Waterman 和 SAM。

这个项目适合谁

用户价值
Rust 生物信息学开发者直接复用 FM-index、SMEM、链构建、SW 和 SAM 组件。
算法学习者用 Rust 阅读 BWA-MEM 风格核心流程,而不是从大型 C 代码库开始。
单端 reads 实验需要可配置、可测试、易归档的单端比对基线。
安全敏感原型需要禁止 unsafe 的 DNA 比对实验环境。

能力矩阵

能力状态说明
FASTA 参考输入已交付支持多 contig。
FASTQ 单端 reads已交付当前稳定数据路径。
.fm 索引已交付单文件 bincode 格式,magic/version 校验。
SMEM + chaining + SW已交付BWA-MEM 风格,不追求 bit-level 兼容。
SAM 输出已交付CIGAR、MAPQ、AS/XS/NM、MD:Z、SA:Z。
Rayon 并行已交付read 级并行。
配对端计划中保留设计与局部基础设施,CLI 未开放。
BAM/CRAM计划中当前只输出 SAM。

不适合的场景

  • 生产级配对端工作流。
  • 与 BWA 输出完全一致的兼容性测试。
  • 人类基因组规模的成熟生产调度。
  • 需要 BAM/CRAM 原生输出的流程。

入口

MIT License. Inspired by BWA.