github.com/kojix2/sdust.cr

Reimplementation of Sdust in the Crystal language

1 stars
0 dependents
License: MIT

Nothing has been indexed for 0.1.3.alpha yet. The tag is recorded, its shard.yml has not been read, so the manifest and dependency list below are empty because they are unknown rather than because they are absent.

Installation

# Add this to your shard.yml
dependencies:
  sdust:
    github: kojix2/sdust.cr
    version: ~> 0.1.3.alpha

Then run:

shards install

shard.yml

No shard.yml has been indexed for 0.1.3.alpha. You can read it on the repository.

Dependencies

Unknown: the shard.yml for this version has not been read yet.

README

This README is the one indexed from the repository at its latest ref, not from the tag for this version.

Sdust.cr

test

Reimplementation of Sdust in Crystal.

Installation

Install via GitHub Releases or from source:

git clone https://github.com/kojix2/sdust.cr
cd sdust.cr
shards build --release

Usage

Usage: sdust [options] <in.fa>
    -w, --window SIZE                Window size [64]
    -t, --threshold SIZE             Threshold size [20]

License

  • This project is a reimplementation of Heng Li's Sdust in Crystal.
  • Sdust is part of Minimap2, which is licensed under the MIT License.

MIT License

FAQ

Q: Is this implementation faster than the original Sdust?

A: No. Earlier versions were about 1.5x slower. In the v0.2.0 benchmark, after streaming FASTA records through the core and reducing some allocations, it is about 1.04x slower on chr21.

Q: Does this implementation consume less memory than the original Sdust?

A: In the v0.2.0 benchmark, yes. Earlier versions used several times more memory. After reducing retained sequence and intermediate data, peak RSS on chr21 is lower than the original Sdust.

Q: Why was it created?

A: It was created to explore how much performance could be improved using Crystal, a language similar to Ruby.