[Cbc] Question about memory usage & std::string
John Forrest
john.forrest at fastercoin.com
Mon Oct 10 12:50:39 EDT 2016
Christoph,
The initial solve will have names (unless they were dropped earlier) but
inside Cbc the default is to get rid of names. You have to force
keeping names by setting OsiNameDiscipline.
To check- why not switch off names completely by
cbc -keepnames off -import ...mps
and see what happens to time.
John
On 10/10/16 11:47, Christoph Cullmann wrote:
> Hi,
>
> I just profile the memory usage of the solving of some of our large scale ILPs.
>
> The biggest usage is by far the stored column/row names (>> 70-80% of used memory).
>
> It seems that they are internally coppied a lot (e.g. during presolving, simplex, ...).
> That seems to be ok, for std::strings that are copy-on-write, like older GCCs,
> but with more recent GCCs (and libstdc++) versions or clang/MSVC, you have no copy-on-write.
>
> Is that a known issue or is there an easy way to rectify this?
>
> Greetings
> Christoph
>
More information about the Cbc
mailing list