Skip to content

v2.3.1

Latest

Choose a tag to compare

@github-actions github-actions released this 02 Jul 15:52

A performance patch release. Byte-identical output to 2.3.0 β€” no changes to behavior, CLI, index format, or outputs.

Faster mapping hot path

Folds in three profiling-guided, behavior-preserving optimizations across the COMBINE-lab Rust stack, all targeting per-read / per-candidate setup cost on the default selective-alignment mapping path:

  • align_chain query reuse + DNA5 LUT (#1042, @BenjaminDEMAILLE) β€” reuse a thread-local oriented-query buffer instead of allocating per candidate, and a 256-entry lookup table for DNA5 encoding.
  • ReadKmerIter setup halved (piscem-rs 0.6.2) β€” derive the reverse-complement k-mer word from the forward word via reverse_bits instead of a second base-by-base pass, and drop a redundant first-k-1 pre-scan.
  • Elias-Fano boundary-offset caching (sshash-lib 0.6.1) β€” locate_with_end caches the two boundary offsets during its scan (~half the Elias-Fano selects per locate).

Measured on x86_64 (default selective-alignment mapping): ~2.5% faster single-threaded, neutral at high thread counts (memory-bandwidth bound); larger gains on Apple silicon. Output is byte-identical β€” verified selective-alignment and sketch quant.sf unchanged versus 2.3.0.

Thanks to @BenjaminDEMAILLE for the profiling pass and the companion PRs.


Install salmon-cli 2.3.1

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/COMBINE-lab/salmon/releases/download/v2.3.1/salmon-cli-installer.sh | sh

Download salmon-cli 2.3.1

File Platform Checksum
salmon-cli-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
salmon-cli-x86_64-apple-darwin.tar.xz Intel macOS checksum
salmon-cli-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
salmon-cli-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum