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
Parallel computation of number of solutions in dancing links #18987
Comments
Commit: |
Branch: u/slabbe/18987 |
This comment has been minimized.
This comment has been minimized.
Changed branch from u/slabbe/18987 to none |
Changed commit from |
Commit: |
Branch: u/slabbe/18987 |
comment:6
Still other stuff to improve... |
comment:8
Ok, now needs reviews. I won't rebase my branch anymore. |
Reviewer: Vincent Delecroix |
comment:9
Salut Sebastien, Do you mind if I rebase over 6.9.beta1? Note that I also have a waiting commit that does some tiny optimization to I am not sure the overall strategy is the good one. If parallelization is needed I guess that it should better be implemented at the level of dancing links. Googling "parallelization dancing links" already gives a lot of things. Less importantly:
Vincent |
Author: Sébastien Labbé |
comment:10
Replying to @videlec:
Merge or rebase? I prefer if you merge. Or I can rebase on 6.9.beta1 to keep the authorship (right?).
Where?
Indeed, I am using a parallelization strategy that applies to a tiling problem where each piece is used only once. This strategy obviously does not apply to the general problem that is the Exact cover problem. Also, I prefered to cut the (tiling) problem into subproblems that takes at most 2-3 hours each so that I can more easily follow the process of the computation and stop and restart the computation more easily. Even with a parallel implementation of dancing links, the computation would take days to finish. |
comment:58
Replying to @seblabbe:
I opened #19036 |
Branch pushed to git repo; I updated commit sha1. New commits:
|
comment:60
(I will not have access to a machine with Sage for the next 7 days). |
comment:61
Ok, Vincent. I am now back and available to do the follow up on this ticket. With the new proposal you made, this ticket now consist of two independant things. Do you prefer me to split the code into two tickets (easier to review) or is it ok like this? Sébastien |
comment:62
I finally decided to split this ticket into two to ease the review. The second part is now available at #19107. |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
comment:65
it is the union of solutions of the subproblems that form the solution of the initial one.
|
Branch pushed to git repo; I updated commit sha1. New commits:
|
comment:67
Thanks for your review! I fixed the first comments.
Because I don't know how or if it is possible to use the parallel decorator to merge iterators. |
comment:68
Salut Sebastien, Thanks for your patience. I am sure that the choice of splitting is suboptimal but at least the design is much cleaner than in the first version. Vincent |
Changed branch from public/18987 to |
The following computation takes a lot of time:
but we can make it faster by doing the computation in parallel... This ticket does this (directly in the dancing links code).
Component: combinatorics
Author: Sébastien Labbé
Branch/Commit:
29ff986
Reviewer: Vincent Delecroix
Issue created by migration from https://trac.sagemath.org/ticket/18987
The text was updated successfully, but these errors were encountered: