Decision Optimization

Decision Optimization

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


#Analytics
#DecisionOptimization
#DecisionOptimization
 View Only
  • 1.  Develop the java program on the cluster

    Posted 04/24/12 04:09 AM

    Originally posted by: SongYang


    Hi all,
    I am running my java based cplex program on our campus's cluster(server) which has enough memory (48G). However, when I run it, this program always takes up much more memory than it needs ( I think). Therefor, all the memory are exhausted by this program but there is no result.
    Could you help me to fix this problem? Thanks a lot.
    #CPLEXOptimizers
    #DecisionOptimization


  • 2.  Re: Develop the java program on the cluster

    Posted 04/24/12 12:50 PM

    Originally posted by: SystemAdmin


    Could you provide more details? When is the machine running out of memory? Is it while setting up the model? Or is it while solving it?
    How many threads do you use? Does it help to set the number of threads (IloCplex.IntParam.Threads) to 1? Could you post the CPLEX output here?
    #CPLEXOptimizers
    #DecisionOptimization


  • 3.  Re: Develop the java program on the cluster

    Posted 04/24/12 01:09 PM

    Originally posted by: SongYang


    Hi, I am glad to provide this. The model can run in the server, but it is always consuming all the memory of the server. I am trying to set the Thread as you told me, and some other ways. Like change the workmem variable, change NodeFiledInd, and TreLim. But it seems it does not work well. There is no output for the problem, it is time consuming.
    #CPLEXOptimizers
    #DecisionOptimization


  • 4.  Re: Develop the java program on the cluster

    Posted 04/24/12 01:35 PM

    Originally posted by: SystemAdmin


    No output at all? That would mean that the solve does not even start.
    Could you sprinkle your Java code with System.out.println() to see the progress in building the model? Could you tell if you even reach the call to IloCplex.solve()?
    Maybe wrap your whole code into something like this
    public static void main(String[] args) {
       try {
          // your code here
          ...
       } catch (OutOfMemoryException e) {
          System.err.println("Out of memory!");
          e.printStackTrace();
          System.exit(-1);
       } catch (OutOfMemoryError e) {
          System.err.println("Out of memory!");
          e.printStackTrace();
          System.exit(-1);
       }
    }
    

    What does the stack trace tell you? What is the function that goes out of memory? Does the stack trace point into CPLEX code?
    #CPLEXOptimizers
    #DecisionOptimization