IBM Support

RS00468: OPL SCRIPT PERFORMANCE DEGRADES DRASTICALLY OVER TIME WHEN ARRAYS ARE USED

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • When large arrays are used in OPL Scripts, the performance may
    degredate over time because garbage collection may be invoked
    too frequently.
    

Local fix

  • Allocate arrays as model data.
    
    So for the code below:
    
    execute {
        var b = new Array();
        for (var i=0; i < 1000; i++) {
         b[i] =  new Array();
         for (var j=0; j < 1000; j++) {
          b[i][j]=2*j;
      }
     }
    }
    
    Reformulate it as the following:
    
    range is = 0..999;
    range js = 0..999;
    
    int b[is][js];
    
    execute {
        for (var i in is) {
         for (var j in js) {
          b[i][j]=2*j;
      }
     }
    }
    

Problem summary

  • When memory allocation in script exceeds a certain threshold,
    garbage collection can start occurring on every script statement
    hence, slowing down script execution significantly.
    

Problem conclusion

  • Issue has been resolved and fix is available with CPLEX
    Optimization Studio 12.3.
    

Temporary fix

Comments

APAR Information

  • APAR number

    RS00468

  • Reported component name

    ILOG OPL-CPLEX

  • Reported component ID

    5724Y5400

  • Reported release

    630

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2010-10-20

  • Closed date

    2011-07-19

  • Last modified date

    2011-07-21

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Fix information

  • Fixed component name

    ILOG OPL-CPLEX

  • Fixed component ID

    5724Y5400

Applicable component levels

  • RC20 PSY

       UP

[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSSA5P","label":"IBM ILOG CPLEX Optimization Studio"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"6.3","Edition":"","Line of Business":{"code":"LOB10","label":"Data and AI"}}]

Document Information

Modified date:
21 July 2011