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