Decision Optimization

Decision Optimization

Delivers prescriptive analytics capabilities and decision intelligence to improve decision-making.

 View Only
  • 1.  Memory issue

    Posted Thu March 18, 2010 02:11 PM

    Originally posted by: SystemAdmin


    Hi everybody,

    I have an iterative solution approach where I iterate between solving two model extracted to two different cplex instances.
    I modify the objective function 'expression' of one of these models and task manager shows that nothing special happened interms of change in memory size. But then when I invoke solve the size grows by ca. 60 MB (I guess the new objective function expresseion is extracted here to cplex instance). Nothing has happened; the expression is almost the same size as before even not a bigger term.

    now the question is: why this size increases and how to avoid it.\
    If it would have been 1-2 or 3 MB that was fine but I cannot convince myself about this 60 MB. I have tried all possibilities of clearning cplex object, clearing the model even some nonsense experiments etc with no avail.
    Any comment highly appreciated.

    regards,
    #CPLEXOptimizers
    #DecisionOptimization


  • 2.  Re: Memory issue

    Posted Fri March 19, 2010 02:57 AM

    Originally posted by: SystemAdmin


    Just a wild guess:
    How many threads do you use and how big is your model?
    Could it be that the 60 MB result from the fact that data is duplicated for multiple threads?
    Do you also observe that big increase in memory if you run with
    cplex.setParam(IloCplex::Threads, 1);
    #CPLEXOptimizers
    #DecisionOptimization


  • 3.  Re: Memory issue

    Posted Fri March 19, 2010 03:30 AM

    Originally posted by: SystemAdmin


    I just checked again.
    "Parallel mode: none, using 1 thread."
    and if I am not mistaking the academic license does not support the multi-thread anyway?!?!
    It is default value and I run it again with explicitly setting the thread parameter to 1;
    the same as before.
    There is a unique address for it and the concern that one thread might not find the address and re-initialize the expression is less likely to be the case.
    I have also tried different nonsense experiments like clearModel and extract etc but with no iprovement.

    Releasing memory has been always an issue for me it is not in particular bound to a specific version.
    #CPLEXOptimizers
    #DecisionOptimization


  • 4.  Re: Memory issue

    Posted Fri March 19, 2010 03:41 AM

    Originally posted by: SystemAdmin


    I forgot to say;
    the models is a O(n^5) lp model.
    #CPLEXOptimizers
    #DecisionOptimization


  • 5.  Re: Memory issue

    Posted Fri March 19, 2010 04:31 AM

    Originally posted by: SystemAdmin


    Does this 60 MB penalty occur only once in a while or every time you solve()?
    It may also be related to internal information that is allocated for the solve like clique tables, cuts etc. Can you post your model so that I could check how much data is allocated to these tables?
    #CPLEXOptimizers
    #DecisionOptimization


  • 6.  Re: Memory issue

    Posted Fri March 19, 2010 05:41 AM

    Originally posted by: SystemAdmin


    as the model is a pure lp model I can hardly guess that it has to do with cuts.
    Which kind of information you would need? I am not sure what to do? Even if I send you the pre and post lp files it will not give more info because the tings happen in concert.
    could you please tell me what shall i send you?
    #CPLEXOptimizers
    #DecisionOptimization