#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.

Reply via email to