<?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: Stop Hogging all my resource! in Administration and Deployment</title>
    <link>https://communities.sas.com/t5/Administration-and-Deployment/Stop-Hogging-all-my-resource/m-p/140334#M9816</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I'm inclined to agree with KurtBremser, but another possibility is to try UPDATE (&lt;A href="http://support.sas.com/documentation/cdl/en/lrdict/64316/HTML/default/viewer.htm#a000202975.htm" title="http://support.sas.com/documentation/cdl/en/lrdict/64316/HTML/default/viewer.htm#a000202975.htm"&gt;SAS(R) 9.2 Language Reference: Dictionary, Fourth Edition&lt;/A&gt;).&lt;/P&gt;&lt;P&gt;In addition to his suggestions, look at the location of your temporary storage, and clean out any residues directories there.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Trouble with the SQL is that it's memory intensive - good chance you'll run into memory problems there., since you mention the 1G limitation, the way to go is DATA step.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Other possibilities: have you checked COMPRESS= data set option (&lt;A href="http://support.sas.com/documentation/cdl/en/lrdict/64316/HTML/default/viewer.htm#a001288760.htm" title="http://support.sas.com/documentation/cdl/en/lrdict/64316/HTML/default/viewer.htm#a001288760.htm"&gt;SAS(R) 9.2 Language Reference: Dictionary, Fourth Edition&lt;/A&gt;) - depending on your data set you might squeeze space out there. Also the length of your variables (&lt;A href="http://support.sas.com/documentation/cdl/en/lrdict/64316/HTML/default/viewer.htm#a000218807.htm" title="http://support.sas.com/documentation/cdl/en/lrdict/64316/HTML/default/viewer.htm#a000218807.htm"&gt;SAS(R) 9.2 Language Reference: Dictionary, Fourth Edition&lt;/A&gt;). They won't make a difference for temporary data sets (WORK) - SAS expands thing during processing (or maybe that's my 'experience' showing), but will make a difference in your permanent data set.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope these suggestions help&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 24 Oct 2014 12:31:48 GMT</pubDate>
    <dc:creator>RCW</dc:creator>
    <dc:date>2014-10-24T12:31:48Z</dc:date>
    <item>
      <title>Stop Hogging all my resource!</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/Stop-Hogging-all-my-resource/m-p/140330#M9812</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I'm running a merge on a rather big dataset. The problem is it sloooows my PC down it becomes annoying.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I've tried using bufsiz and bufno to reduce the amount SAS uses and in desperation set them to 1 but to no discernible difference.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I don't mind if the process takes longer, but is there a way so it only uses 1 GB of RAM?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The two tables are 17,396,594 and 1,763,513 rows and sit on my C Drive.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I'm using SAS Base 9.3 (Windows 7) and I don't want answers offering me a different 'Technical' solution (i.e. SAS Server etc.) but are there any settings I can change in my current environment?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks for any help offered!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;/* adding sequence count to records - in case incorrect #'s were given */&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;data clean.UPDT UCST;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&amp;nbsp; merge clean.UPDT (in=a) &lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&amp;nbsp; SEQ_LST (in=b rename=SEQUENCE_COUNT=LSEQ);&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&amp;nbsp; by CUST_ID TMP_CUST;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&amp;nbsp; if SEQUENCE_COUNT &amp;lt; LSEQ then output UCST;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&amp;nbsp; else output clean.UPDT;&lt;/EM&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;run;&lt;/EM&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 24 Oct 2014 08:36:54 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/Stop-Hogging-all-my-resource/m-p/140330#M9812</guid>
      <dc:creator>dannyf</dc:creator>
      <dc:date>2014-10-24T08:36:54Z</dc:date>
    </item>
    <item>
      <title>Re: Stop Hogging all my resource!</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/Stop-Hogging-all-my-resource/m-p/140331#M9813</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;If its just a space issue, consider splitting the two datasets up, e.g. take half the distinct custids, and merge those, then take the other etc&lt;/P&gt;&lt;P&gt;proc sql;&lt;/P&gt;&lt;P&gt;&amp;nbsp; create table FIRST_BLOCK as&lt;/P&gt;&lt;P&gt;&amp;nbsp; select&amp;nbsp; A.*,&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; B.MAKE as B_MAKE&lt;/P&gt;&lt;P&gt;&amp;nbsp; from&amp;nbsp;&amp;nbsp;&amp;nbsp; SASHELP.CARS A&lt;/P&gt;&lt;P&gt;&amp;nbsp; left join SASHELP.CARS B&lt;/P&gt;&lt;P&gt;&amp;nbsp; on&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A.MAKE=B.MAKE&lt;/P&gt;&lt;P&gt;&amp;nbsp; where&amp;nbsp;&amp;nbsp; A.MAKE in (select MAKE from (select distinct MAKE from SASHELP.CARS) where MONOTONIC() &amp;lt;= 10);&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 24 Oct 2014 09:05:41 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/Stop-Hogging-all-my-resource/m-p/140331#M9813</guid>
      <dc:creator>RW9</dc:creator>
      <dc:date>2014-10-24T09:05:41Z</dc:date>
    </item>
    <item>
      <title>Re: Stop Hogging all my resource!</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/Stop-Hogging-all-my-resource/m-p/140332#M9814</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;You're just I/O bound, mainly because:&lt;/P&gt;&lt;P&gt;- your disk is not suited for this kind of work&lt;/P&gt;&lt;P&gt;- all your files reside on the same disk, causing the disk heads to permanently jump between the physical positions of the infiles and the outfiles.&lt;/P&gt;&lt;P&gt;- on top of that, you may be the victim of disk fragmentation, causing I/O to slow down even more.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You can alleviate this by getting a faster disk (preferably SSD, that eliminates all kinds of latencies) or moving to several disks and allocating the libraries on physically separate drives.&lt;/P&gt;&lt;P&gt;You can also take a look at the hash object method. This lets you read the smaller file in one sweep before reading through the larger file. But you still have disk contention between reading and writing,&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 24 Oct 2014 09:33:57 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/Stop-Hogging-all-my-resource/m-p/140332#M9814</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2014-10-24T09:33:57Z</dc:date>
    </item>
    <item>
      <title>Re: Stop Hogging all my resource!</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/Stop-Hogging-all-my-resource/m-p/140333#M9815</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;And oh yeah, doing a defragmentation of your C: drive may help a little.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 24 Oct 2014 09:35:19 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/Stop-Hogging-all-my-resource/m-p/140333#M9815</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2014-10-24T09:35:19Z</dc:date>
    </item>
    <item>
      <title>Re: Stop Hogging all my resource!</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/Stop-Hogging-all-my-resource/m-p/140334#M9816</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I'm inclined to agree with KurtBremser, but another possibility is to try UPDATE (&lt;A href="http://support.sas.com/documentation/cdl/en/lrdict/64316/HTML/default/viewer.htm#a000202975.htm" title="http://support.sas.com/documentation/cdl/en/lrdict/64316/HTML/default/viewer.htm#a000202975.htm"&gt;SAS(R) 9.2 Language Reference: Dictionary, Fourth Edition&lt;/A&gt;).&lt;/P&gt;&lt;P&gt;In addition to his suggestions, look at the location of your temporary storage, and clean out any residues directories there.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Trouble with the SQL is that it's memory intensive - good chance you'll run into memory problems there., since you mention the 1G limitation, the way to go is DATA step.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Other possibilities: have you checked COMPRESS= data set option (&lt;A href="http://support.sas.com/documentation/cdl/en/lrdict/64316/HTML/default/viewer.htm#a001288760.htm" title="http://support.sas.com/documentation/cdl/en/lrdict/64316/HTML/default/viewer.htm#a001288760.htm"&gt;SAS(R) 9.2 Language Reference: Dictionary, Fourth Edition&lt;/A&gt;) - depending on your data set you might squeeze space out there. Also the length of your variables (&lt;A href="http://support.sas.com/documentation/cdl/en/lrdict/64316/HTML/default/viewer.htm#a000218807.htm" title="http://support.sas.com/documentation/cdl/en/lrdict/64316/HTML/default/viewer.htm#a000218807.htm"&gt;SAS(R) 9.2 Language Reference: Dictionary, Fourth Edition&lt;/A&gt;). They won't make a difference for temporary data sets (WORK) - SAS expands thing during processing (or maybe that's my 'experience' showing), but will make a difference in your permanent data set.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope these suggestions help&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 24 Oct 2014 12:31:48 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/Stop-Hogging-all-my-resource/m-p/140334#M9816</guid>
      <dc:creator>RCW</dc:creator>
      <dc:date>2014-10-24T12:31:48Z</dc:date>
    </item>
    <item>
      <title>Re: Stop Hogging all my resource!</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/Stop-Hogging-all-my-resource/m-p/140335#M9817</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi danny,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If you want to restrict SAS to only use 1 GB of RAM, then use the &lt;STRONG&gt;-memsize 1GB&lt;/STRONG&gt; option within your SAS Windows shortcut. I'm guessing that's how you launch/start your SAS session.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If you cannot create unique index for your smaller data set "SEQ_LST" (1,763,513) on CUST_ID TMP_CUST, then I would suggest looking into using Hash Object for as alternative. There are several papers showing how to do that. Check &lt;A href="http://www.lexjansen.com/"&gt;www.lexjansen.com&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope this helps,&lt;/P&gt;&lt;P&gt;Ahmed&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 24 Oct 2014 12:50:47 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/Stop-Hogging-all-my-resource/m-p/140335#M9817</guid>
      <dc:creator>AhmedAl_Attar</dc:creator>
      <dc:date>2014-10-24T12:50:47Z</dc:date>
    </item>
    <item>
      <title>Re: Stop Hogging all my resource!</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/Stop-Hogging-all-my-resource/m-p/140336#M9818</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I just got home and started looking at your code again and a couple of things occurred to me.&lt;/P&gt;&lt;P&gt;In particular, &lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;&lt;EM style="font-family: inherit;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if SEQUENCE_COUNT &amp;lt; LSEQ then output UCST&lt;/EM&gt;&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;&lt;EM&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else output clean.UPDT;&lt;/EM&gt;&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;&lt;EM style="font-family: inherit;"&gt;&lt;BR /&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;&lt;EM&gt;might have a problem by not checking for sequence_count &amp;gt; lseq &lt;/EM&gt;&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;&lt;EM&gt;Another thing, you've got IN= set:&lt;/EM&gt;&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;&lt;EM style="font-family: inherit;"&gt;&lt;BR /&gt;&lt;/EM&gt;&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;&lt;EM&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; merge clean.UPDT (in=a)&amp;nbsp;&amp;nbsp; &lt;/EM&gt;&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;&lt;EM&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SEQ_LST (in=b rename=SEQUENCE_COUNT=LSEQ);&lt;/EM&gt;&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;but you never test it, so is it possible that records are coming in from seq_lst when there is no corresponding updt?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In reference to the memory issue, unless told otherwise, in a data step SAS does it I/O directly - i.e. it reads a record(s) from disk, processes it, and writes to disk. There are exceptions (hash tables for example and Data set options that keep it loaded), but those are exceptions. It helps to remember that SAS was written for mainframes using punch cards (I know this personally). Memory was barely measured in K (hence the reference to K in some of the options), let alone M or G. As I stated before, its PROC SQL that tends to hog&lt;/P&gt;&lt;P&gt;memory.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Another possibility that updates a data set directly, hence is more dangerous, is the MODIFY statement.&lt;/P&gt;&lt;P&gt;&lt;A href="http://support.sas.com/documentation/cdl/en/lestmtsref/63323/HTML/default/viewer.htm#n0g9jfr4x5hgsfn17gtma5547lt1.htm" title="http://support.sas.com/documentation/cdl/en/lestmtsref/63323/HTML/default/viewer.htm#n0g9jfr4x5hgsfn17gtma5547lt1.htm"&gt;http://support.sas.com/documentation/cdl/en/lestmtsref/63323/HTML/default/viewer.htm#n0g9jfr4x5hgsfn17gtma5547lt1.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;Go through a couple of examples and back up you data.&lt;/P&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 24 Oct 2014 23:33:43 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/Stop-Hogging-all-my-resource/m-p/140336#M9818</guid>
      <dc:creator>RCW</dc:creator>
      <dc:date>2014-10-24T23:33:43Z</dc:date>
    </item>
    <item>
      <title>Re: Stop Hogging all my resource!</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/Stop-Hogging-all-my-resource/m-p/140337#M9819</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Probably because you are reading and writing to the same disk that Windows is using as its swap disk.&lt;/P&gt;&lt;P&gt;Get another disk drive.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 25 Oct 2014 01:06:40 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/Stop-Hogging-all-my-resource/m-p/140337#M9819</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2014-10-25T01:06:40Z</dc:date>
    </item>
    <item>
      <title>Re: Stop Hogging all my resource!</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/Stop-Hogging-all-my-resource/m-p/140338#M9820</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks all for suggestions.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The issue is the RAM that it's using so another drive won't help (i.e. I could use our network drive but that will be even slower).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I was hoping MEMSIZE would resolve my problems - (documentation isn't clear wither this is hard disk memory or RAM). But it said it was unable to process due the limitation!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 29 Oct 2014 15:12:37 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/Stop-Hogging-all-my-resource/m-p/140338#M9820</guid>
      <dc:creator>dannyf</dc:creator>
      <dc:date>2014-10-29T15:12:37Z</dc:date>
    </item>
    <item>
      <title>Re: Stop Hogging all my resource!</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/Stop-Hogging-all-my-resource/m-p/140339#M9821</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;What exactly was the ERROR message? Please post the log including the code that caused the ERROR.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 30 Oct 2014 09:30:58 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/Stop-Hogging-all-my-resource/m-p/140339#M9821</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2014-10-30T09:30:58Z</dc:date>
    </item>
  </channel>
</rss>

