Skip to content

Return only sample flows in reachableByFlows + optimizations#1000

Merged
fabsx00 merged 10 commits into
masterfrom
fabs/dflowopt
Oct 14, 2020
Merged

Return only sample flows in reachableByFlows + optimizations#1000
fabsx00 merged 10 commits into
masterfrom
fabs/dflowopt

Conversation

@fabsx00
Copy link
Copy Markdown
Contributor

@fabsx00 fabsx00 commented Oct 14, 2020

Prep work for upcoming article on data flow.

It is computationally prohibitive to enumerate all flows, however, determining whether a flow exists and returning a sample can be done efficiently. This PR modifies reachableByFlows to accomplish this, return the flow of maximum length. If multiple flows of maximum length exist, we sort by node-ids to ensure that we obtain reproducible.

  • Return only sample flows in data flow calculation
  • Use vectors as opposed to lists to store path elements and results
  • Deduplicate results before writing them to the result table
  • Do not store partial results if this is the last analysis stage

@fabsx00 fabsx00 changed the title Optimizations for data flow Return only sample flows in reachableByFlows + optimizations Oct 14, 2020
@fabsx00 fabsx00 requested a review from ursachec October 14, 2020 14:41
@fabsx00 fabsx00 merged commit 9e8ba9e into master Oct 14, 2020
@delete-merged-branch delete-merged-branch Bot deleted the fabs/dflowopt branch October 14, 2020 14:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants