<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Proc Mix insufficient memory issue in Statistical Procedures</title>
    <link>https://communities.sas.com/t5/Statistical-Procedures/Proc-Mix-insufficient-memory-issue/m-p/234021#M12359</link>
    <description>Correction: it took about 11 sec of real time on 50 M records.</description>
    <pubDate>Tue, 10 Nov 2015 14:56:46 GMT</pubDate>
    <dc:creator>lvm</dc:creator>
    <dc:date>2015-11-10T14:56:46Z</dc:date>
    <item>
      <title>Proc Mix insufficient memory issue</title>
      <link>https://communities.sas.com/t5/Statistical-Procedures/Proc-Mix-insufficient-memory-issue/m-p/233905#M12348</link>
      <description>&lt;P&gt;I have run into memory issues using Proc Mix. I cannot include as many random effects as I would like without getting a message about insufficient memory. I am using SAS 9.4 and have been using the memory=MAX command which has given me some more memory but not enough. I would like to buy a new computer that is more powerful but am unsure what to buy. My current computer is a Dell 64 bit operating system with Intel(R) Core(TM) i7 CPU, 960@3.20GHZ with 12.0 GB of RAM. It has Windows 7 Professional. Will it help to buy a more powerful computer? I would like to know what others are using and if they run into simialr memory issues.&lt;/P&gt;&lt;P&gt;thanks!&lt;/P&gt;</description>
      <pubDate>Mon, 09 Nov 2015 20:53:02 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Statistical-Procedures/Proc-Mix-insufficient-memory-issue/m-p/233905#M12348</guid>
      <dc:creator>kbaughma</dc:creator>
      <dc:date>2015-11-09T20:53:02Z</dc:date>
    </item>
    <item>
      <title>Re: Proc Mix insufficient memory issue</title>
      <link>https://communities.sas.com/t5/Statistical-Procedures/Proc-Mix-insufficient-memory-issue/m-p/233916#M12351</link>
      <description>&lt;P&gt;I presume you mean PROC MIXED. You should use HPMIXED. This should handle your memory problems. Most of the syntax is the same, although there are far fewer options with HPMIXED.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://support.sas.com/resources/papers/proceedings09/256-2009.pdf" target="_blank"&gt;http://support.sas.com/resources/papers/proceedings09/256-2009.pdf&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The mixed model equations can consist of some very large matrices; inverting them takes a great deal of time and memory when there are many random effects. I highly recommend that you figure out how to use HPMIXED.&lt;/P&gt;</description>
      <pubDate>Mon, 09 Nov 2015 21:41:42 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Statistical-Procedures/Proc-Mix-insufficient-memory-issue/m-p/233916#M12351</guid>
      <dc:creator>lvm</dc:creator>
      <dc:date>2015-11-09T21:41:42Z</dc:date>
    </item>
    <item>
      <title>Re: Proc Mix insufficient memory issue</title>
      <link>https://communities.sas.com/t5/Statistical-Procedures/Proc-Mix-insufficient-memory-issue/m-p/233920#M12352</link>
      <description>&lt;P&gt;Thanks, I will look into that procedure.&lt;/P&gt;</description>
      <pubDate>Mon, 09 Nov 2015 21:50:36 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Statistical-Procedures/Proc-Mix-insufficient-memory-issue/m-p/233920#M12352</guid>
      <dc:creator>kbaughma</dc:creator>
      <dc:date>2015-11-09T21:50:36Z</dc:date>
    </item>
    <item>
      <title>Re: Proc Mix insufficient memory issue</title>
      <link>https://communities.sas.com/t5/Statistical-Procedures/Proc-Mix-insufficient-memory-issue/m-p/233921#M12353</link>
      <description>&lt;P&gt;Yes, I also ran into an&amp;nbsp;unexpected&amp;nbsp;memory issue recently, with this innocuous PROC MEANS step:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc means data=tmt mean min median;
var dttm;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;Log message: "&lt;FONT face="courier new,courier"&gt;A shortage of memory has caused the quantile computations to terminate prematurely for&amp;nbsp;QMETHOD=OS. ...&lt;/FONT&gt;"&lt;/P&gt;
&lt;P&gt;Dataset TMT had about 39.5 million observations.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;This happened on a Windows 7 Pro 64-Bit workstation with an Intel(R) Xeon(TM) E5-1630v3 3.7GHz&amp;nbsp;10M CPU&amp;nbsp;and 64 GB DDR4-2133 RAM.&amp;nbsp;However, only about 14 GB RAM were available to SAS at that time, because I am using a RAM disk software which combines 50 GB RAM with 100 GB of the 1st 256-GB SSD to form a 150-GB hybrid RAM disk. I am&amp;nbsp;curious whether the issue would still occur if using the full 64 GB of RAM, but haven't tried yet.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;My first idea would have been to upgrade the RAM of your computer (if this is possible), but lvm's suggestion about PROC HPMIXED sounds very promising.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 09 Nov 2015 22:16:00 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Statistical-Procedures/Proc-Mix-insufficient-memory-issue/m-p/233921#M12353</guid>
      <dc:creator>FreelanceReinh</dc:creator>
      <dc:date>2015-11-09T22:16:00Z</dc:date>
    </item>
    <item>
      <title>Re: Proc Mix insufficient memory issue</title>
      <link>https://communities.sas.com/t5/Statistical-Procedures/Proc-Mix-insufficient-memory-issue/m-p/233928#M12354</link>
      <description>&lt;P&gt;There are several "HP" (high performance) procedures now. Run on single machine or in distributed mode. There is no HPMEANS, but there is HPSUMMARY. This might work for your purpose of getting quantiles with very large data sets. With 40 M observations, quantiles will be difficult to get without the tricks of large-scale computing. At some point, you would need to get the distributed computing products.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;For some procedures, SAS 9.4 won't allow the (non-HP) procedure to run if it will take too much time. This is frustrating. I have 9.3 and 9.4 on my desktop, and I can fit a mixed model on a large data set with 9.3 (taking many hours), but in 9.4 I just get a message that it would take too long to run.&lt;/P&gt;</description>
      <pubDate>Mon, 09 Nov 2015 22:40:35 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Statistical-Procedures/Proc-Mix-insufficient-memory-issue/m-p/233928#M12354</guid>
      <dc:creator>lvm</dc:creator>
      <dc:date>2015-11-09T22:40:35Z</dc:date>
    </item>
    <item>
      <title>Re: Proc Mix insufficient memory issue</title>
      <link>https://communities.sas.com/t5/Statistical-Procedures/Proc-Mix-insufficient-memory-issue/m-p/234017#M12358</link>
      <description>&lt;P&gt;Out of curiosity, I just simulated 50 million observations and determined the median and quartiles with PROC HPSUMMARY. No problem. I did this with "only" 8 GB of memory and a slow processor.Took less than 1/2 second of real time.&amp;nbsp; It is important to use the P2 method of quantile estimation (approximation). The default (OS) requires internal ordering of the observations, which is a challenge with so many observations.&lt;/P&gt;
&lt;PRE&gt;proc hpsummary data=a qmethod=p2;
var y;
output out=out q1=q1 q3=q3  median=median  mean=mean;
run;
proc print data=out;run;&lt;/PRE&gt;</description>
      <pubDate>Tue, 10 Nov 2015 14:49:31 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Statistical-Procedures/Proc-Mix-insufficient-memory-issue/m-p/234017#M12358</guid>
      <dc:creator>lvm</dc:creator>
      <dc:date>2015-11-10T14:49:31Z</dc:date>
    </item>
    <item>
      <title>Re: Proc Mix insufficient memory issue</title>
      <link>https://communities.sas.com/t5/Statistical-Procedures/Proc-Mix-insufficient-memory-issue/m-p/234021#M12359</link>
      <description>Correction: it took about 11 sec of real time on 50 M records.</description>
      <pubDate>Tue, 10 Nov 2015 14:56:46 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Statistical-Procedures/Proc-Mix-insufficient-memory-issue/m-p/234021#M12359</guid>
      <dc:creator>lvm</dc:creator>
      <dc:date>2015-11-10T14:56:46Z</dc:date>
    </item>
    <item>
      <title>Re: Proc Mix insufficient memory issue</title>
      <link>https://communities.sas.com/t5/Statistical-Procedures/Proc-Mix-insufficient-memory-issue/m-p/234024#M12360</link>
      <description>&lt;P&gt;You can also use the QMETHOD=P2 option directly from PROC MEANS.&lt;/P&gt;</description>
      <pubDate>Tue, 10 Nov 2015 15:00:28 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Statistical-Procedures/Proc-Mix-insufficient-memory-issue/m-p/234024#M12360</guid>
      <dc:creator>Rick_SAS</dc:creator>
      <dc:date>2015-11-10T15:00:28Z</dc:date>
    </item>
    <item>
      <title>Re: Proc Mix insufficient memory issue</title>
      <link>https://communities.sas.com/t5/Statistical-Procedures/Proc-Mix-insufficient-memory-issue/m-p/234027#M12361</link>
      <description>&lt;P&gt;Good point. It is interesting that it takes about the same amount of time with MEANS as with HPSUMMARY to get quartiles (P2 option) on 50 M observations (on my desktop).&lt;/P&gt;</description>
      <pubDate>Tue, 10 Nov 2015 15:14:39 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Statistical-Procedures/Proc-Mix-insufficient-memory-issue/m-p/234027#M12361</guid>
      <dc:creator>lvm</dc:creator>
      <dc:date>2015-11-10T15:14:39Z</dc:date>
    </item>
    <item>
      <title>Re: Proc Mix insufficient memory issue</title>
      <link>https://communities.sas.com/t5/Statistical-Procedures/Proc-Mix-insufficient-memory-issue/m-p/234071#M12364</link>
      <description>&lt;P&gt;Many thanks to both&amp;nbsp;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/61480"&gt;@kbaughma﻿&lt;/a&gt;&amp;nbsp;and&amp;nbsp;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/13758"&gt;@lvm﻿&lt;/a&gt;!&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;kbaughma's initial post reminded me of the performance-related system options. I discovered that the MEMSIZE option on my machine was still set to its default of 2147483648 (=2G), which meant that only a small portion of my 14 GB (or 64 GB after deactivating the RAM disk) had been available to SAS.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;By simply setting MEMSIZE to MAX (during startup) my previously failed PROC MEANS step (see earlier post in this thread) ran without problems.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;And much more: Now an ordinary PROC SUMMARY was able to cope with randomly generated 640 million observations (4.84 GB dataset) and calculated mean, min and, above all, median within less than 10 minutes -- without forcing me to resort to QMETHOD=P2 and its fluctuating results.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;After this breakthrough I tried to push the limit even further and found that PROC HPSUMMARY achieved the same with 700 million observations (5.29 GB, 11 minutes, peak physical memory usage at about 53 GB), whereas PROC SUMMARY failed.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;However, with 720 million obs. the old warning reappeared with either procedure.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;So, the improvement by PROC HPSUMMARY over PROC SUMMARY -- in single-machine mode! -- in terms of processable numbers of observations was somewhere between 0 and 12.5 percent. There seemed to be no significant difference regarding run time. Of course, in distributed mode a completely different picture is to be expected.&lt;/P&gt;</description>
      <pubDate>Tue, 10 Nov 2015 17:18:07 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Statistical-Procedures/Proc-Mix-insufficient-memory-issue/m-p/234071#M12364</guid>
      <dc:creator>FreelanceReinh</dc:creator>
      <dc:date>2015-11-10T17:18:07Z</dc:date>
    </item>
    <item>
      <title>Re: Proc Mix insufficient memory issue</title>
      <link>https://communities.sas.com/t5/Statistical-Procedures/Proc-Mix-insufficient-memory-issue/m-p/860231#M42506</link>
      <description>&lt;P&gt;Hello guys ,&amp;nbsp;&lt;/P&gt;&lt;P&gt;in the same topic, i need how can i estimate&amp;nbsp;the total memory required for running PROC MIXED. there is a specific formula.&lt;/P&gt;&lt;P&gt;thank you&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 22 Feb 2023 17:27:45 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Statistical-Procedures/Proc-Mix-insufficient-memory-issue/m-p/860231#M42506</guid>
      <dc:creator>Ameurgen</dc:creator>
      <dc:date>2023-02-22T17:27:45Z</dc:date>
    </item>
    <item>
      <title>Re: Proc Mix insufficient memory issue</title>
      <link>https://communities.sas.com/t5/Statistical-Procedures/Proc-Mix-insufficient-memory-issue/m-p/860244#M42507</link>
      <description>&lt;P&gt;The documentation for many of the classic SAS/STAT procedures includes a section called "Computational Issues," which often includes a discussion of memory requirements. For PROC MIXED, see&amp;nbsp;&lt;A href="https://go.documentation.sas.com/doc/en/pgmsascdc/9.4_3.5/statug/statug_mixed_details58.htm#statug_mixed017807" target="_blank"&gt;SAS Help Center: Computational Issues&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 22 Feb 2023 18:07:53 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Statistical-Procedures/Proc-Mix-insufficient-memory-issue/m-p/860244#M42507</guid>
      <dc:creator>Rick_SAS</dc:creator>
      <dc:date>2023-02-22T18:07:53Z</dc:date>
    </item>
    <item>
      <title>Re: Proc Mix insufficient memory issue</title>
      <link>https://communities.sas.com/t5/Statistical-Procedures/Proc-Mix-insufficient-memory-issue/m-p/860245#M42508</link>
      <description>&lt;P&gt;&lt;SPAN&gt;You might also want to consider using PROC HPMIXED, it is designed for models with a large X and/or Z matrix if this is your case here.&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 22 Feb 2023 18:10:18 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Statistical-Procedures/Proc-Mix-insufficient-memory-issue/m-p/860245#M42508</guid>
      <dc:creator>JoséQ</dc:creator>
      <dc:date>2023-02-22T18:10:18Z</dc:date>
    </item>
    <item>
      <title>Re: Proc Mix insufficient memory issue</title>
      <link>https://communities.sas.com/t5/Statistical-Procedures/Proc-Mix-insufficient-memory-issue/m-p/860248#M42509</link>
      <description>&lt;P&gt;thank you all,&lt;/P&gt;&lt;P&gt;i know about hpmixed solution but it is a just curiosity to know what is the technique applied for this and what is the reason of this computation issue with proc mixed and memory requirements.&amp;nbsp;&lt;/P&gt;&lt;P&gt;i need the formula or simple explaination for that , i found a many porposition and i don't know where is the correct one.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you again&lt;/P&gt;</description>
      <pubDate>Wed, 22 Feb 2023 18:25:24 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Statistical-Procedures/Proc-Mix-insufficient-memory-issue/m-p/860248#M42509</guid>
      <dc:creator>Ameurgen</dc:creator>
      <dc:date>2023-02-22T18:25:24Z</dc:date>
    </item>
    <item>
      <title>Re: Proc Mix insufficient memory issue</title>
      <link>https://communities.sas.com/t5/Statistical-Procedures/Proc-Mix-insufficient-memory-issue/m-p/860252#M42510</link>
      <description>&lt;P&gt;The specific details for PROC MIXED are here:&lt;/P&gt;
&lt;P&gt;&lt;A href="https://documentation.sas.com/doc/en/pgmsascdc/9.4_3.3/statug/statug_mixed_details58.htm#statug_mixed017845" target="_blank"&gt;https://documentation.sas.com/doc/en/pgmsascdc/9.4_3.3/statug/statug_mixed_details58.htm#statug_mixed017845&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Memory determination depends on a lot of things. For example, how one specifies the model can make a big difference. A statement such as&lt;/P&gt;
&lt;P&gt;random A A*B;&lt;/P&gt;
&lt;P&gt;can use more memory (and be slower to fit) than using:&lt;/P&gt;
&lt;P&gt;random int B / sub=A;&lt;/P&gt;
&lt;P&gt;because the latter is processed by subjects.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 22 Feb 2023 18:36:10 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Statistical-Procedures/Proc-Mix-insufficient-memory-issue/m-p/860252#M42510</guid>
      <dc:creator>lvm</dc:creator>
      <dc:date>2023-02-22T18:36:10Z</dc:date>
    </item>
  </channel>
</rss>

