INNER CODE UNIT · Rust

bench_scan_aa_core_trace

soedinglab/metaeuk · lib/mmseqs/lib/block-aligner/benches/rand_scan.rs:78

fn bench_scan_aa_core_trace<const K: usize>(b: &mut Bencher, len: usize) {
    let mut rng = StdRng::seed_from_u64(1234);
    let r = black_box(rand_str(len, &AMINO_ACIDS, &mut rng));
    let q = black_box(rand_mutate(&r, K, &AMINO_ACIDS, &mut rng));
    let r = PaddedBytes::from_bytes::<AAMatrix>(&r, 2048);
    let q = PaddedBytes::from_bytes::<AAMatrix>(&q, 2048);
    let bench_gaps = Gaps { open: -11, extend: -1 };

    b.iter(|| {
        let mut a = Block::<true, false>::new(q.len(), r.len(), 2048);
        a.align(&q, &r, &BLOSUM62, bench_gaps, 32..=2048, 0);
        //a.res()
        let mut cigar = Cigar::new(q.len(), r.len());
        a.trace().cigar(q.len(), r.len(), &mut cigar);
        (a.res(), cigar)
    });
}

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…