Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Clean dependency data structures and speed up GetDependencies #1368

Merged
merged 7 commits into from
Feb 15, 2021

Conversation

pepeiborra
Copy link
Collaborator

While looking to improve the performance of GetDependencies (see #1359) I found some redundancies in the dependency tracking code - we don't use package dependencies anywhere.

I expect the performance improvements to be very modest, if at all noticeable in the current benchmark examples, but I haven't measured myself. Will check CI when it's done.

This only parallelizes the branching step, to truly parallelize the search it
would be nice to use monad-par. Unfortunately I cannot find a monad transformer
version of it that can be laid on top of the Action monad
@pepeiborra
Copy link
Collaborator Author

The benchmarks don't show any measurable impact to performance, as expected given the relatively small size of our examples

@pepeiborra
Copy link
Collaborator Author

pepeiborra commented Feb 14, 2021

Reproducing the comment in one of the commits for ease of review:

This only parallelizes the parsing of Mod summaries in the branching step. To truly parallelize the traversal it would be nice to use monad-par, unfortunately I cannot find a monad transformer version of it that can be laid on top of the Action monad

@pepeiborra pepeiborra added the merge me Label to trigger pull request merge label Feb 14, 2021
@mergify mergify bot merged commit 4d431e9 into haskell:master Feb 15, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
merge me Label to trigger pull request merge
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants