#17647: Branch and Bound for vertex separation
-------------------------+-------------------------------------------------
Reporter: | Owner:
dcoudert | Status: needs_review
Type: | Milestone: sage-6.5
enhancement | Resolution:
Priority: major | Merged in:
Component: graph | Reviewers:
theory | Work issues:
Keywords: | Commit:
Authors: David | 9aaf80ef0d8dea032d3cda04537fb8a42e1e3311
Coudert | Stopgaps:
Report Upstream: N/A |
Branch: |
public/17647 |
Dependencies: |
-------------------------+-------------------------------------------------
Comment (by dcoudert):
> Here are some superficial changes. It's faster to implement them than to
write a long comment. Fix anything that you don't agree with.
Nice. I have just fixed a small typo.
> I am not done with the review, but I worry a bit about the fact that you
allocate memory in a recursive function. They can cost a lot, these
things. Do you see a clean way to avoid that ?
I already though about it and I don't have a "clean" method to propose. I
could for instance allocate one for all 5 arrays of n bitsets each and
access to the bitsets of level *level* since the BAB has depth at most n.
This way we avoid multiple allocations.
If you think it is OK, I can implement it.
> Also, I did some profiling on your code and it seems that the most time-
consuming operations is the call to popcount. I do not know where it is
needed yet, but if you know how to work around that you would probably
earn some perf.
What's the magic commande to profile this code? %prun is not working here.
The speed of the {{{bitset_len}}} method depends on the system. Since
patch #13352, we use the mpn methods for popcount which is expected to use
{{{__builtin_popcount}}}. I don't know how fast it is on my laptop. I'll
check as soon as you give me the magic command ;)
Thanks,
David.
--
Ticket URL: <http://trac.sagemath.org/ticket/17647#comment:11>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.