Crate biometal

Crate biometal 

Source
Expand description

biometal: ARM-native bioinformatics library with streaming architecture

§Overview

biometal enables analysis of terabyte-scale genomics datasets on consumer hardware through streaming architecture, ARM NEON optimization, and network streaming.

§Key Features

  • Streaming: Constant ~5 MB memory regardless of dataset size
  • ARM-Native: 16-25× speedup using NEON SIMD
  • Network Streaming: Analyze without downloading (HTTP/SRA)
  • Intelligent I/O: 16.3× speedup (parallel bgzip + mmap)
  • Evidence-Based: Every optimization validated experimentally

§Quick Start

use biometal::FastqStream;

// Stream FASTQ from file (constant memory)
let stream = FastqStream::from_path("large.fq.gz")?;

for record in stream {
    let record = record?;
    // Process one record at a time
}

§Evidence Base

biometal’s design is grounded in 1,357 experiments (40,710 measurements, N=30):

§Module Organization

  • alignment: Sequence alignment algorithms (Smith-Waterman with CPU/NEON/GPU)
  • formats: Bioinformatics file format parsers (BED, GFA, VCF, GFF)
  • io: Streaming parsers (FASTQ, FASTA, compression, network)
  • operations: ARM NEON-optimized operations
  • optimization: Auto-detection and platform tuning

Re-exports§

pub use alignment::smith_waterman;
pub use alignment::smith_waterman;
pub use alignment::Alignment;
pub use alignment::CigarOp;
pub use alignment::ScoringMatrix;
pub use error::BiometalError;
pub use error::Result;
pub use io::FastaStream;
pub use io::FastqStream;
pub use io::FastqWriter;
pub use io::PairedFastqStream;
pub use types::FastaRecord;
pub use types::FastqRecord;

Modules§

alignment
Sequence alignment algorithms
error
Error types for biometal
formats
Bioinformatics file format parsers.
io
I/O module: Streaming parsers and compression
operations
ARM NEON-optimized operations and sequence manipulation primitives
optimization
Platform detection and auto-optimization
types
Common types used throughout biometal

Constants§

VERSION
Library version