Skip to content

Recommended Settings

Omar Ahmed edited this page Jul 25, 2024 · 2 revisions
  • There are two main speed optimizations that are important to keep in mind when using Cliffy to make sure you are taking advantage of them.
      1. Using minimizer alphabet to represent reference and reads
      1. Using a look-up table called ftab to speed-up query

Using minimizer alphabet:

  • The basic idea here is that if we digest the database sequence into a concatenated sequence of minimizers where each minimizer is a single 8-bit character. It will reduce the size of the index but it will also reduce the size of reads at query time to speed up query.

  • How do I use it?

    • When using the build sub-command to build indexes: use --minimizers option to digest sequence.
    • When running the run sub-command to run queries: use --minimizers option to digest the reads.
  • How can I change the parameters of minimizer scheme?

    • Keep in mind, the default parameters are chosen in order to balance speed-up with classification accuracy. However, if you would like to change the parameters. You can do so using the --small-window and --large-window options.

Using ftab:

  • The intuition here is that since Cliffy is doing backward search, we can use a lookup table to skip some initial steps.

  • How do I use it?

    • When using the build sub-command: the ftab data-structure will be written to a file by default, so you don't need to do anyting!
    • When using the run sub-command: use the --ftab option in order to use the data-structure to speed-up queries.