<br><font size=2 face="sans-serif">I am not sure how to recover from a
crash. Are you checking memory usage and then exiting if it gets
close to 2Gb?</font>
<br>
<br><font size=2 face="sans-serif">If so the simplest thing to do is to
derive an event handler from CbcEventHandler to do the checking and return
stop if too much memory being used. You use passIn EventHandler to
tell CbcModel to use your one.</font>
<br>
<br><font size=2 face="sans-serif">John Forrest</font>
<br>
<br>
<br>
<table width=100%>
<tr valign=top>
<td width=40%><font size=1 face="sans-serif"><b>acw@ascent.com</b> </font>
<br><font size=1 face="sans-serif">Sent by: coin-discuss-bounces@list.coin-or.org</font>
<p><font size=1 face="sans-serif">05/05/2006 12:29 PM</font>
<table border>
<tr valign=top>
<td bgcolor=white>
<div align=center><font size=1 face="sans-serif">Please respond to<br>
Discussions about open source software for Operations Research
<coin-discuss@list.coin-or.org></font></div></table>
<br>
<td width=59%>
<table width=100%>
<tr valign=top>
<td>
<div align=right><font size=1 face="sans-serif">To</font></div>
<td><font size=1 face="sans-serif">Coin-discuss@list.coin-or.org</font>
<tr valign=top>
<td>
<div align=right><font size=1 face="sans-serif">cc</font></div>
<td>
<tr valign=top>
<td>
<div align=right><font size=1 face="sans-serif">Subject</font></div>
<td><font size=1 face="sans-serif">[Coin-discuss] User exit tests in Cbc?</font></table>
<br>
<table>
<tr valign=top>
<td>
<td></table>
<br></table>
<br>
<br>
<br><font size=2 face="sans-serif"><br>
Our application using COIN/Cbc is going very well. We have successfully
ported to Windows and integrated an only-slightly-tweaked Cbc solver with
the rest of our application.</font><font size=3> <br>
</font><font size=2 face="sans-serif"><br>
Recently, however, we encountered a case for which the solver ran out of
memory and crashed ignominiously in the middle of a run. (In the
benighted world of 32-bit Windows, a process's address space is limited
to about 2Gb.) We are, therefore, adding an extra exit test to the
main loop in CbcModel::branchAndBound. It isn't very tricky. But
we would like to do it without modifying CbcModel.cpp any more than is
absolutely necessary, so that we can stay synchronized with the main-branch
sources as easily as possible. So this led us to consider adding
a little user hook to the exit tests. Perhaps just after "!stoppedOnGap
&& !eventHappened" we could add "&& !userExitTest()".</font><font size=3>
<br>
</font><font size=2 face="sans-serif"><br>
Have the Cbc developers considered making this kind of user exit hook available?
What would you consider the most "Cbc-y" way to do it?</font><font size=3>
<br>
</font><font size=2 face="sans-serif"><br>
Thanks for your thoughts.</font><tt><font size=2>_______________________________________________<br>
Coin-discuss mailing list<br>
Coin-discuss@list.coin-or.org<br>
http://list.coin-or.org/mailman/listinfo/coin-discuss<br>
</font></tt>
<br>