Operations Research topics: SAS/OR,
SAS Optimization, and SAS Simulation Studio

lpsolve ERROR: out of memory

Accepted Solution Solved
Reply
Occasional Contributor
Posts: 8
Accepted Solution

lpsolve ERROR: out of memory

I just tried lpsolve in IML on SAS University Edition.  It fails with "ERROR: out of memory", apparently regardless of the number of variables.

I've tried increasing the sizes on IML to no avail.

 

I wonder if changing the memsize option would work. I don't see how to do that under VirtualBox though. In fact, some comments indicate that SAS has actually locked us out 'because UE is only for smallish programs'. It's not clear to me that lpsolve would run on my config regardless of problem size.

Is there a way to change memsize on UE/VirtualBox setup? Is that really what is needed?

 

Thanks,

 

Duane

 

logo
Release: 3.5 (Basic Edition)

Supported browsers:
  • Microsoft Internet Explorer 9, 10, 11
  • Mozilla Firefox 21+
  • Google Chrome 27+
  • Apple Safari 6.0+ (on Apple OS X)

Build date: Feb 3, 2016 10:49:31 PM
SAS Mid-tier release: Jan 13, 2016 7:00:00 PM
Java Version: 1.7.0_76
SAS release: 9.04.01M3P06242015
SAS platform: Linux LIN X64 2.6.32-573.26.1.el6.x86_64
Site name: UNIVERSITY EDITION 2.3 9.4M3
Site number: xxxxxxxx

Copyright © 2012-2016, SAS Institute Inc., Cary, NC, USA.

 

 

 

94 proc iml symspace=256000000 workspace=256000000 worksize=256000000;
 
NOTE: Assuming that the number is given in bytes and not kilobytes.
NOTE: Assuming that the number is given in bytes and not kilobytes.
NOTE: Assuming that the number is given in bytes and not kilobytes.
NOTE: Worksize = 256000000
NOTE: Symbol size = 256000000
NOTE: IML Ready
95 use lib.raw;
96 read all var {U } into u;
97 read all var {Score } into c;
98 read all var {G I GI In Inv M} into a;
99 a = a`;
100 b = {.3, .2, .1, .14, .45, .45};
101 leg={G , G , G , G , G , G };
102 ctrl = {-1,1};
102 ! /* maximize objective, print some details */
103
104 call lpsolve(rc, objVal, result, dual, reducost,
105 c, a, b,
106 ctrl,
107 leg,,,u);
ERROR: Out of memory.
NOTE: Number of iterations = 0.
NOTE: Time used (secs) = 0.00.
108 print rc objVal, result[rowname={x1 x2}];
109
110
111 OPTIONS NONOTES NOSTIMER NOSOURCE NOSYNTAXCHECK;
 

Accepted Solutions
Solution
‎01-25-2017 09:14 AM
SAS Super FREQ
Posts: 3,306

Re: lpsolve ERROR: out of memory

This problem has nothing to do with the size of the problem. It was a bug in SAS University Edition for SAS  9.4m3. The issue has been fixed in SAS 9.4m4, so the problem will be fixed when you upgrade your copy of SAS UE.

View solution in original post


All Replies
Esteemed Advisor
Posts: 6,268

Re: lpsolve ERROR: out of memory

You can't change any of these settings in SAS UE. As you observed, it is a learning tool. If you want to do heavy load testing of the SAS system, obtain a test installation from your SAS representative.

---------------------------------------------------------------------------------------------
Maxims of Maximally Efficient SAS Programmers
Occasional Contributor
Posts: 8

Re: lpsolve ERROR: out of memory

I don't recall seeing the 'learning tool' stance and associated limitations when I was installing it last year. The stress seemed to be on us not using it commercially. Maybe I missed it. I thought it was just missing some features.

 

So is lpsolve completely unavailable on UE due to this error? Or have I made a stupid mistake?

 

I have to say that I'm pretty put off if SAS would purposely hobble UE in this fashion.

 

If I can find it back, I recall finding instructions for loading UE on another virtualization environment and getting around this problem (if this is really my problem).  But if SAS is acting in bad faith, then that sort of thing isn't a good strategy long term. Sounds like R's lp solution is a hassle, but at least they're not putting land mines in it on purpose.

 

 

Esteemed Advisor
Posts: 6,268

Re: lpsolve ERROR: out of memory

SAS UE is a for-free example installation of a usually very expensive software system. It is not "hobbled", but it is limited capacity-wise.

The intention behind UE is to provide SAS beginners a learning environment that lets them prepare for SAS certifications with data provided for the courses; with those, you'll never run into problems.

 

Your best option is to reduce the scope of your example data so you can get an example solution.

If you want to solve real-world problems, get a true SAS installation that is scaled to your requirements.

 

In the end it's all a matter of TANSTAAFL. And if the "learning stance" is not clear from this: http://www.sas.com/en_us/software/university-edition.html, then how else should SAS convey it?

---------------------------------------------------------------------------------------------
Maxims of Maximally Efficient SAS Programmers
Occasional Contributor
Posts: 8

Re: lpsolve ERROR: out of memory

Looks like I'm nowhere near the limit. Still, the page you reference does not mention limiting problem size. Though to be fair, university and learning are mentioned. I was surprised to find out about the memory limit. I expect others will be as well. And it does seem tacky to me.

Non-commercial use seemed to be the target.

Solution
‎01-25-2017 09:14 AM
SAS Super FREQ
Posts: 3,306

Re: lpsolve ERROR: out of memory

This problem has nothing to do with the size of the problem. It was a bug in SAS University Edition for SAS  9.4m3. The issue has been fixed in SAS 9.4m4, so the problem will be fixed when you upgrade your copy of SAS UE.

Occasional Contributor
Posts: 8

Re: lpsolve ERROR: out of memory

Thanks. That seems credible. I'll try upgrading. I thought I was up to date since UE checks at launch and reports that it is up to date.

Occasional Contributor
Posts: 8

Re: lpsolve ERROR: out of memory

Upgrading to 9.4M4 worked.

☑ This topic is SOLVED.

Need further help from the community? Please ask a new question.

Discussion stats
  • 7 replies
  • 153 views
  • 6 likes
  • 3 in conversation