BookmarkSubscribeRSS Feed
Arsenio_Staer
Calcite | Level 5
Hey guys,

Found a new kinky thing with EG 4.3, when plotting 20 separate charts with around 2000 datapoints per each one and 3 variables, so total 20 charts with 3 variables in each one with 2000 datapoints each. The loading time is big, then it says the results are big ( 8 megs) do you want to add them? I say yes,

proc gplot runs fine, and when i click on the report to see the graphs, this pops up

Exception of type 'System.OutOfMemoryException' was thrown.

------------------------------ Technical Information Follows ------------------------------

System.OutOfMemoryException: Exception of type 'System.OutOfMemoryException' was thrown.
at SAS.Report.Models.XML.XMLIQData.XMLValue.LoadElement(ReportElement parent)
at SAS.Report.Models.XML.XMLReportElement.LoadSubelement(String name, XmlNode node, XMLReportElement xmlClass, ReportElement parent)
at SAS.Report.Models.XML.XMLReportElement.LoadSubelements(String name, XMLReportElement xmlClass, ReportElement parent)
at SAS.Report.Models.XML.XMLIQData.XMLValuesList.LoadElement(ReportElement parent)
at SAS.Report.Models.XML.XMLReportElement.LoadSubelement(String name, XmlNode node, XMLReportElement xmlClass, ReportElement parent)
at SAS.Report.Models.XML.XMLReportElement.LoadSubelements(String name, XMLReportElement xmlClass, ReportElement parent)
at SAS.Report.Models.XML.XMLIQData.XMLEmbeddedData.LoadElement(ReportElement parent)
at SAS.Report.Models.XML.XMLReportElement.LoadSubelement(String name, XmlNode node, XMLReportElement xmlClass, ReportElement parent)
at SAS.Report.Models.XML.XMLReportElement.LoadSubelement(String name, XMLReportElement xmlClass, ReportElement parent)
at SAS.Report.Models.XML.XMLIQData.LoadElement(ReportElement parent)
at SAS.Report.Models.XML.XMLReportElement.LoadSubelement(String name, XmlNode node, XMLReportElement xmlClass, ReportElement parent)
at SAS.Report.Models.XML.XMLData.LoadElement(ReportElement parent)
at SAS.Report.Models.XML.XMLReportElement.LoadSubelement(String name, XmlNode node, XMLReportElement xmlClass, ReportElement parent)
at SAS.Report.Models.XML.XMLReportElement.LoadSubelements(String name, XMLReportElement xmlClass, ReportElement parent)
at SAS.Report.Models.XML.XMLSASReport.LoadElement(ReportElement parent)
at SAS.Report.Models.XML.XMLParse.CreateDOM(Stream file, String fragment, Hashtable customObjectMap)
at SAS.Report.Models.XML.XML.ReadReport(Stream inputStream, Hashtable customObjectMap)
at SAS.Report.Models.XML.XML.ReadReport(FileInfo file, Hashtable customObjectMap, String prefixUniqueId)
at SAS.Report.Models.XML.XML.ReadReport(String filename, Hashtable customObjectMap, String uniqueIdPrefix)
at SAS.Report.Viewer.SASReportView.ReadReport(String reportFileName, String uniqueIdPrefix)
at SAS.Report.Viewer.SASReportView.ReadReport(String reportFileName)
at SAS.EG.ProjectElementViews.SasReportView.OpenDocument()

------------------------------ End of Technical Information ------------------------------



memory imprint of EG never goes above 1.1 gb with 6gb total mem, commit and total/available mem are within limits, eg is the largest thing running. I've done bigger things before like rolling corrs with appendings which create really big datafiles. I really dont want to route this through tech support cause i've already spent 1.5 months in january with them, although she was really superb. Don't have that time 😞

Thanks!!!

Arsenio
3 REPLIES 3
ChrisHemedinger
Community Manager
The default output device for graphs is ActiveX, which generates verbose script when creating HTML, SAS Report, or RTF output. The more data points, the larger the files.

Try changing your Graph type to PNG, which will generate static graphics files that are a consistent file size.

Tools->Results->Graph: Graph Format.

Chris
It's time to register for SAS Innovate! Join your SAS user peers in Las Vegas on April 16-19 2024.
Arsenio_Staer
Calcite | Level 5
Chris,

Thanks a lot for the answer! What are the mem limits for EG 4.3 or why there should be an error if there is enough available RAM? Can it multithread or use several cores or use over 3 gb of RAM on a 64 Win machine? Or should i get SAS for win 64? Sorry for too many questions.

I restarted the machine and reran EG 4.3 now it could display those graphs.

Thanks!
ChrisHemedinger
Community Manager
The memory limits depend on your system, but are also constrained by the fact that EG is a 32-bit application.

I'll tell you though: if your results contain THAT large of a file due to so many charts (with lots of data points), even if they load without a memory error, they will not likely be usable in a practical way. For each chart that uses ActiveX, the EG report renderer (for SAS Report) or your Web browser (for HTML) must create an instance of a graph control, which then must render the chart. It's much faster/easier with the PNG static charts.

SAS for x64 won't help you to manage large results, because EG is still a 32-bit app. But I advise you to try to optimize your results (to be smaller in file size) rather than try to push the limits of your system unnecessarily. I believe that you can do this without losing fidelity in the results.

As far as multithreading: EG is multithreaded in the way that it communicates with a SAS process and does work while keeping the UI responsive. However, a single EG session will run on just one core. You can have multiple EG sessions though.

SAS.exe is also multithreaded, and with SAS/CONNECT and SAS Grid technology you can have single SAS job that runs across multiple cores. See http://support.sas.com/rnd/scalability for more.

Chris
It's time to register for SAS Innovate! Join your SAS user peers in Las Vegas on April 16-19 2024.

sas-innovate-2024.png

Today is the last day to save with the early bird rate! Register today for just $695 - $100 off the standard rate.

 

Plus, pre-conference courses and tutorials are filling up fast and are always a sellout. Register today to reserve your seat.

 

Register now!

SAS Enterprise Guide vs. SAS Studio

What’s the difference between SAS Enterprise Guide and SAS Studio? How are they similar? Just ask SAS’ Danny Modlin.

Find more tutorials on the SAS Users YouTube channel.

Click image to register for webinarClick image to register for webinar

Classroom Training Available!

Select SAS Training centers are offering in-person courses. View upcoming courses for:

View all other training opportunities.

Discussion stats
  • 3 replies
  • 3476 views
  • 0 likes
  • 2 in conversation