Allow long-read Giraffe to take self-loops/reversals between seeds#4953
Open
faithokamoto wants to merge 114 commits into
Open
Allow long-read Giraffe to take self-loops/reversals between seeds#4953faithokamoto wants to merge 114 commits into
faithokamoto wants to merge 114 commits into
Conversation
adamnovak
requested changes
Jul 7, 2026
adamnovak
left a comment
Member
There was a problem hiding this comment.
I looked mostly at the chaining changes and not as much at the actual loop logic, but I think there has to be a neater way to bring the graph distances out of chaining than hiding each one in a struct with the index of the seed.
I would add them to what is right now the ChainWithRec structure.
That makes them harder to carry through when we translate to chains of seeds and not chains of anchors. But maybe we could have a new structure for that?
Ultimately they really need to be available to get_graph_distance() to accelerate it, right? If they're too hard to bring everywhere with the chains, we could try caching them all in a table during chaining and giving the table to get_graph_distance().
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Changelog Entry
To be copied to the draft changelog by merger:
-b hifi/-b r10) to take self-loops/reversals between seedsDescription
PR'ing this since I don't see any more how to get it to work better. It decreases the number of incorrectly mapped reads, at least.
Notable changes:
LOOPitem.LOOPs as much as possible.LOOPwe save a position using the newS_TAKE_LOOPstate. When we reload this position we immediately take the loop by turning around and then keep going.