[Cbc] Problem in CbcCompareUser/invalid heap
Lou Hafer
lou at cs.sfu.ca
Wed Nov 14 11:18:45 EST 2012
Folks,
If it's windows, this is a long-standing issue. Debug builds in
Visual Studio were unusable because the VS heap implementation checks
for violations of the heap conditions in debug builds. Cbc did not
properly rebuild the heap after changing the evaluation function. I
fixed this in r1506 because I needed to work with a windows debug build
but quite possibly it's broken again.
The key point is that the heap must be rebuilt when the evaluation
function changes. Otherwise it's a bomb waiting to go off.
John's observation about using drand as the return value is
interesting. Begs the question of whether the overhead of maintaining
the heap is really worth it.
Lou
On 14/11/12 12:43 AM, John Forrest wrote:
> Haroldo,
>
> Using which compiler do you have problems with CbcCompareDefault - or is
> it with CbcCompareUser?
>
> If it is gcc then I am totally mystified as I changed CbcCompareDefault
> to do
>
> return (drand48()<0.5);
>
> and my runs were fine (not even much slower!).
> 1506
> So is just with Windows or Intel?
>
> John Forrest
More information about the Cbc
mailing list