Expand description
Scoring whole records, piece by piece, across threads.
crate::fasta::split_seq_by_gaps breaks a record at unscoreable bases, and the
resulting pieces are independent: curvature is computed from a sliding window that
never spans a gap, so no piece needs anything from its neighbours. That makes the
pieces the natural unit of parallelism.
Structs§
- Chunk
- One unit of independently scoreable work within a piece.
- Curve
Params - The parameters that define a curvature calculation.
- Piece
Curves - The curvature scores for one piece, with the positions they belong to.
- SymParams
- The parameters of the symmetry stage.
Enums§
- Stage
- Which stage of the calculation to produce.
Constants§
- DEFAULT_
CHUNK_ SCORES - The default number of scores one chunk produces.
Functions§
- chunks
- Divide a piece of
piece_lenbases into chunks producingchunk_scoresscores each. - score_
bases - Score a run of bases with fresh state.
- score_
piece - Score a single piece.
- score_
piece_ chunked - Score a single piece, dividing it into chunks of the given size.
- score_
pieces - Score every piece, in parallel, preserving input order.
- score_
symmetry_ bases - Score a run of bases through to symmetry, with fresh state.
- sym_
chunks - Divide a piece into chunks of symmetry scores.