<?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: How to make SAS faster? in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/How-to-make-SAS-faster/m-p/310900#M67096</link>
    <description>&lt;PRE&gt;
Chris,
You are right. Sad for DS2 .


&lt;/PRE&gt;</description>
    <pubDate>Fri, 11 Nov 2016 10:08:00 GMT</pubDate>
    <dc:creator>Ksharp</dc:creator>
    <dc:date>2016-11-11T10:08:00Z</dc:date>
    <item>
      <title>How to make SAS faster?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-make-SAS-faster/m-p/310240#M66892</link>
      <description>&lt;P&gt;Hi,&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am running simple data step with WHERE statement.&amp;nbsp;&lt;/P&gt;&lt;P&gt;Since the source data is enormous(10million rows), it takes time forever.&lt;/P&gt;&lt;P&gt;However, I realized that my computer use only 30% of RAM (out of 16GB), and 7% of CPU.&lt;/P&gt;&lt;P&gt;SASV9.cfg has been modifed but still use the same capacity.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Is there anyway to increase the computer resource use for SAS so that make the process faster?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 08 Nov 2016 21:33:57 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-make-SAS-faster/m-p/310240#M66892</guid>
      <dc:creator>Gwangik</dc:creator>
      <dc:date>2016-11-08T21:33:57Z</dc:date>
    </item>
    <item>
      <title>Re: How to make SAS faster?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-make-SAS-faster/m-p/310243#M66893</link>
      <description>&lt;P&gt;Since your processing is neither memory or CPU constrained, your conclusion should be that it is IO constrained - your hard drive is maxing out. If you are running this on a PC then installing an SSD (Solid State Drive) and putting your SAS data on that as well as your SAS WORK folder should speed things up.&lt;/P&gt;</description>
      <pubDate>Tue, 08 Nov 2016 21:43:31 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-make-SAS-faster/m-p/310243#M66893</guid>
      <dc:creator>SASKiwi</dc:creator>
      <dc:date>2016-11-08T21:43:31Z</dc:date>
    </item>
    <item>
      <title>Re: How to make SAS faster?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-make-SAS-faster/m-p/310244#M66894</link>
      <description>&lt;P&gt;10 million roes doesn't sound that large, so if it's simple data step processing, I think that your&amp;nbsp;problems are HW related.&lt;/P&gt;
&lt;P&gt;If you access a fairly small subset, consider creating an index on your data set.&lt;/P&gt;
&lt;P&gt;You could try&amp;nbsp;increase the MEMSIZE SAS system option, but that will probably not make any difference for sequential processing such as data steps.&lt;/P&gt;
&lt;P&gt;To look into more detail of your resource consuption, use&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;options msglevel=i fullstimer;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Tue, 08 Nov 2016 21:45:07 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-make-SAS-faster/m-p/310244#M66894</guid>
      <dc:creator>LinusH</dc:creator>
      <dc:date>2016-11-08T21:45:07Z</dc:date>
    </item>
    <item>
      <title>Re: How to make SAS faster?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-make-SAS-faster/m-p/310247#M66895</link>
      <description>&lt;P&gt;What does your where clause look like? Separate where statement or data set option?&lt;/P&gt;
&lt;P&gt;How many variables are in the data set? Are they all needed? Dropping variables may reduce disk IO somewhat.&lt;/P&gt;</description>
      <pubDate>Tue, 08 Nov 2016 21:54:03 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-make-SAS-faster/m-p/310247#M66895</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2016-11-08T21:54:03Z</dc:date>
    </item>
    <item>
      <title>Re: How to make SAS faster?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-make-SAS-faster/m-p/310260#M66898</link>
      <description>&lt;P&gt;There many ways to speed up I/Os.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Storage format (SPDE engine vs V9 engine, compression type)&amp;nbsp;has a huge&amp;nbsp;influence.&lt;/P&gt;
&lt;P&gt;An SPDE library with binary compression could speed things up dramatically.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Other issues since you have a where clause are the table sort order and the indexes.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Also, maybe a IF clause would be faster than a WHERE clause. See here:&lt;/P&gt;
&lt;P&gt;&lt;A href="https://communities.sas.com/t5/Base-SAS-Programming/Using-MERGE-with-LIKE-command/m-p/301654#M63878" target="_blank"&gt;https://communities.sas.com/t5/Base-SAS-Programming/Using-MERGE-with-LIKE-command/m-p/301654#M63878&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Another critical factor is the way you retrieve your data in terms of memory utilisation.&lt;/P&gt;
&lt;P&gt;The data set's buffer size, the number of buffers used, whether or not&amp;nbsp;Windows's Direct-IO is used all have a huge effect.&lt;/P&gt;
&lt;P&gt;To illustrate this point, here is a benchmark example taken from this book about making SAS faster:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;A href="https://www.amazon.com/High-Performance-SAS-Coding-Christian-Graffeuille/dp/1512397490" target="_blank" rel="nofollow noopener noreferrer"&gt;https://www.amazon.com/High-Performance-SAS-Coding&lt;WBR /&gt;-Christian-Graffeuille/dp/1512397490&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Table 5.5: Run times for various values of BUFSIZE, BUFNO and SGIO for a 10,000 MB data set&lt;/STRONG&gt;&lt;/P&gt;
&lt;TABLE&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD colspan="2" rowspan="2"&gt;
&lt;P&gt;&lt;STRONG&gt;10,000,000 kB&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD colspan="5" width="340"&gt;
&lt;P&gt;&lt;STRONG&gt;BUFNO&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="68"&gt;
&lt;P&gt;&lt;STRONG&gt;1&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;&lt;STRONG&gt;5&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;&lt;STRONG&gt;25&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;&lt;STRONG&gt;100&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;&lt;STRONG&gt;500&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;BUFSIZE&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;SGIO&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD rowspan="2" width="68"&gt;
&lt;P&gt;195.45&lt;/P&gt;
&lt;/TD&gt;
&lt;TD rowspan="2" width="68"&gt;
&lt;P&gt;.&lt;/P&gt;
&lt;/TD&gt;
&lt;TD rowspan="2" width="68"&gt;
&lt;P&gt;.&lt;/P&gt;
&lt;/TD&gt;
&lt;TD rowspan="2" width="68"&gt;
&lt;P&gt;.&lt;/P&gt;
&lt;/TD&gt;
&lt;TD rowspan="2" width="68"&gt;
&lt;P&gt;.&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;0&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;no&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD rowspan="2"&gt;
&lt;P&gt;&lt;STRONG&gt;4k&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;no&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;235.25&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;236.25&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;235.56&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;239.78&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;235.39&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;yes&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;1177.55&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;572.32&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;157.28&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;93.60&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;93.96&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD rowspan="2"&gt;
&lt;P&gt;&lt;STRONG&gt;8k&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;no&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;163.77&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;162.05&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;164.22&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;164.05&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;161.34&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;yes&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;542.85&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;268.86&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;95.45&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;81.07&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;80.84&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD rowspan="2"&gt;
&lt;P&gt;&lt;STRONG&gt;16k&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;no&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;138.03&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;140.26&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;136.16&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;137.49&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;136.11&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;yes&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;265.46&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;142.55&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;U&gt;75.28&lt;/U&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;U&gt;74.61&lt;/U&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;81.70&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD rowspan="2"&gt;
&lt;P&gt;&lt;STRONG&gt;32k&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;no&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;143.70&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;148.85&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;137.96&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;147.67&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;143.98&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;yes&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;140.56&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;93.84&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;U&gt;73.35&lt;/U&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;U&gt;73.33&lt;/U&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;U&gt;75.48&lt;/U&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD rowspan="2"&gt;
&lt;P&gt;&lt;STRONG&gt;64k&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;no&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;180.47&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;171.39&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;166.63&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;151.69&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;173.16&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;yes&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;88.62&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;U&gt;70.14&lt;/U&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;U&gt;71.62&lt;/U&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;U&gt;72.00&lt;/U&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;.&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD rowspan="2"&gt;
&lt;P&gt;&lt;STRONG&gt;128k&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;no&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;235.25&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;236.25&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;235.56&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;239.78&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;235.39&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;
&lt;P&gt;&lt;STRONG&gt;yes&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;U&gt;70.72&lt;/U&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;U&gt;71.30&lt;/U&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;U&gt;71.34&lt;/U&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;U&gt;70.33&lt;/U&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;/TD&gt;
&lt;TD width="68"&gt;
&lt;P&gt;.&lt;/P&gt;
&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;The default run time is 195 seconds, which can be reduced to 70s by simply changing the memory usage settings.&lt;/P&gt;</description>
      <pubDate>Wed, 09 Nov 2016 02:19:24 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-make-SAS-faster/m-p/310260#M66898</guid>
      <dc:creator>ChrisNZ</dc:creator>
      <dc:date>2016-11-09T02:19:24Z</dc:date>
    </item>
    <item>
      <title>Re: How to make SAS faster?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-make-SAS-faster/m-p/310287#M66910</link>
      <description>&lt;PRE&gt;
It is best for multi-thread PROC DS2.



data test; 
do x=1 to 12316;
 j=x*x; 
output; 
end; 
run; 
 
proc ds2; 
  thread newton/overwrite=yes; 
    dcl double y count; 
    dcl bigint thisThread;
    drop count; 
    method run(); 
      set test; 
      /*  if  x=1 ; */
      thisThread=_threadid_; 
      count+1;
    end; 
    method term();
      put '**Thread' _threadid_ 'processed'  count 'rows:';
    end;
  endthread; 
  run; 
quit; 
 
proc ds2; 
  data want; 
    dcl thread newton frac; 
    method run(); 
         set from frac threads=3; 
    end; 
  enddata;
  run; 
quit;
&lt;/PRE&gt;</description>
      <pubDate>Wed, 09 Nov 2016 06:01:13 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-make-SAS-faster/m-p/310287#M66910</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2016-11-09T06:01:13Z</dc:date>
    </item>
    <item>
      <title>Re: How to make SAS faster?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-make-SAS-faster/m-p/310545#M67002</link>
      <description>&lt;P&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/18408"&gt;@Ksharp﻿&lt;/a&gt; I am pretty sure this would slow down the process considering the data is not spread onto different nodes.&lt;/P&gt;
&lt;P&gt;I can't benchmark atm, but if you can...&lt;/P&gt;</description>
      <pubDate>Thu, 10 Nov 2016 00:44:38 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-make-SAS-faster/m-p/310545#M67002</guid>
      <dc:creator>ChrisNZ</dc:creator>
      <dc:date>2016-11-10T00:44:38Z</dc:date>
    </item>
    <item>
      <title>Re: How to make SAS faster?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-make-SAS-faster/m-p/310549#M67003</link>
      <description>&lt;PRE&gt;

Chris,
No. I can't. This is just intuitive to me . Multiple sessions is best for WHERE / IF situation.

&lt;/PRE&gt;</description>
      <pubDate>Thu, 10 Nov 2016 02:21:35 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-make-SAS-faster/m-p/310549#M67003</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2016-11-10T02:21:35Z</dc:date>
    </item>
    <item>
      <title>Re: How to make SAS faster?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-make-SAS-faster/m-p/310559#M67005</link>
      <description>&lt;P&gt;OK, I had time for a quick run.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;DS2 improves things slightly because my storage is fast enough (or my CPU cores slow enough) to be CPU-bound for single-table processing.&lt;/P&gt;
&lt;P&gt;This doesn't change whether there is a IF/WHERE subset or not, the pattern is the same.&lt;/P&gt;
&lt;P&gt;The 10% elapse time reduction happens at a serious CPU cost (in this case, CPU usage doubles).&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I still suspect that throwing more CPU at a process that is not CPU-bound would&amp;nbsp;not help, and that DS2 threads would seriously degrade performance on slower storage as&amp;nbsp;the I/Os would be more spread.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;My numbers:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;
options nofullstimer compress=no;

data HAVE; 
  length A $200;
  do I=1 to 1e8;
    output; 
  end; 
run; 
 
proc ds2; 
  thread NEWTON/overwrite=yes; 
    method run(); 
      set HAVE;
    end; 
  endthread; 
  run; 
quit; 
 
proc ds2; 
  data WANT; 
    dcl thread NEWTON FRAC; 
    method run(); 
      set from FRAC threads=3; 
    end; 
  enddata;
  run; 
quit;
%*      real time           27.38 seconds ;
%*      cpu time            51.44 seconds ;

data WANT2; 
  set HAVE;
run;
%*      real time           29.31 seconds ;
%*      cpu time            29.31 seconds ;
&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Thu, 10 Nov 2016 03:23:38 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-make-SAS-faster/m-p/310559#M67005</guid>
      <dc:creator>ChrisNZ</dc:creator>
      <dc:date>2016-11-10T03:23:38Z</dc:date>
    </item>
    <item>
      <title>Re: How to make SAS faster?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-make-SAS-faster/m-p/310809#M67062</link>
      <description>&lt;P&gt;Different (slower, LIN64 instead of WIN64) server, (very) different results, but still no reason to use DS2 for this process.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;NOTE: PROCEDURE DS2 used (Total process time):&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; real time&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1:03.27&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cpu time&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1:05.44&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;BR /&gt;NOTE: DATA statement used (Total process time):&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; real time&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1:05.45&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cpu time&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 34.15 seconds&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 10 Nov 2016 22:31:08 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-make-SAS-faster/m-p/310809#M67062</guid>
      <dc:creator>ChrisNZ</dc:creator>
      <dc:date>2016-11-10T22:31:08Z</dc:date>
    </item>
    <item>
      <title>Re: How to make SAS faster?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-make-SAS-faster/m-p/310900#M67096</link>
      <description>&lt;PRE&gt;
Chris,
You are right. Sad for DS2 .


&lt;/PRE&gt;</description>
      <pubDate>Fri, 11 Nov 2016 10:08:00 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-make-SAS-faster/m-p/310900#M67096</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2016-11-11T10:08:00Z</dc:date>
    </item>
    <item>
      <title>Re: How to make SAS faster?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-make-SAS-faster/m-p/310977#M67099</link>
      <description>&lt;P&gt;Hi All,&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;First of all, thank you so much for your tips and advises.&amp;nbsp;&lt;/P&gt;&lt;P&gt;It was my first time to post my question here.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am a die-hard DATA step user.&amp;nbsp;&lt;/P&gt;&lt;P&gt;It took me an hour to process very simple Data Step with 1 WHERE statement w several ANDs.&lt;/P&gt;&lt;P&gt;I could not figure it out why the memory usage is so low.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT color="#0000FF"&gt;NOTE: DATA statement used (Total process time):&lt;/FONT&gt;&lt;BR /&gt;real time&lt;FONT color="#0000FF"&gt; 1:01:47.84&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT color="#0000FF"&gt;user &lt;/FONT&gt;cpu&lt;FONT color="#0000FF"&gt; time 27:13.95&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT color="#0000FF"&gt;system &lt;/FONT&gt;cpu&lt;FONT color="#0000FF"&gt; time 1:49.85&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT color="#FF0000"&gt;memory 1540.78k&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT color="#0000FF"&gt;OS Memory 31988.00k&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This is the time record when I used Proc SQL.&amp;nbsp;&lt;/P&gt;&lt;P&gt;This takes only about 6min which is way quicker than 1 hour with high Memory usage.&lt;/P&gt;&lt;P&gt;&lt;FONT color="#0000FF"&gt;NOTE: PROCEDURE SQL used (Total process time):&lt;/FONT&gt;&lt;BR /&gt;real time&lt;FONT color="#0000FF"&gt; 6:19.32&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT color="#0000FF"&gt;user &lt;/FONT&gt;cpu&lt;FONT color="#0000FF"&gt; time 1:37.65&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT color="#0000FF"&gt;system &lt;/FONT&gt;cpu&lt;FONT color="#0000FF"&gt; time 7.61 seconds&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT color="#FF0000"&gt;memory 637487.35k&lt;/FONT&gt;&lt;BR /&gt;&lt;FONT color="#0000FF"&gt;OS Memory 668740.00k&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT color="#000000"&gt;I am not sure what makes this huge real time difference.....&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT color="#000000"&gt;Again, I appreciate for all the replies. &lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT color="#000000"&gt;Thank you. &amp;nbsp;&lt;/FONT&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 11 Nov 2016 14:00:55 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-make-SAS-faster/m-p/310977#M67099</guid>
      <dc:creator>Gwangik</dc:creator>
      <dc:date>2016-11-11T14:00:55Z</dc:date>
    </item>
    <item>
      <title>Re: How to make SAS faster?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-make-SAS-faster/m-p/311017#M67110</link>
      <description>If we were to make anything out of that you need to attach the code...And Perhaps a proc contents. &lt;BR /&gt;Again, data steps usually process one observation at a time and doesn't utilize memory much.&lt;BR /&gt;SQL on the other hand doesn't need to preserve observations order so I guess it can procees many observations at the same time.</description>
      <pubDate>Fri, 11 Nov 2016 16:36:52 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-make-SAS-faster/m-p/311017#M67110</guid>
      <dc:creator>LinusH</dc:creator>
      <dc:date>2016-11-11T16:36:52Z</dc:date>
    </item>
    <item>
      <title>Re: How to make SAS faster?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-make-SAS-faster/m-p/311116#M67152</link>
      <description>&lt;PRE&gt;

PROC SQL is multi-session oriented PROC, maybe that is reason.
Also you can use OPTIONS MSGLEVEL=I ; to check if SQL used index too.

&lt;/PRE&gt;</description>
      <pubDate>Sat, 12 Nov 2016 03:18:28 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-make-SAS-faster/m-p/311116#M67152</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2016-11-12T03:18:28Z</dc:date>
    </item>
    <item>
      <title>Re: How to make SAS faster?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-to-make-SAS-faster/m-p/311290#M67240</link>
      <description>&lt;P&gt;SQL has a slightly different profile than the data step (on the faster windows server).&lt;/P&gt;
&lt;P&gt;10% longer elapse and 10% less cpu used.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;NOTE: PROCEDURE SQL used (Total process time):&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; real time&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 31.58 seconds&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cpu time&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 25.55 seconds&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;It would be interesting to know more.&lt;/P&gt;
&lt;P&gt;Index usage is indeed the first thing to come to mind for such a dramatic improvement, though there is no reason only SQL should use the index.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sun, 13 Nov 2016 22:35:48 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-to-make-SAS-faster/m-p/311290#M67240</guid>
      <dc:creator>ChrisNZ</dc:creator>
      <dc:date>2016-11-13T22:35:48Z</dc:date>
    </item>
  </channel>
</rss>

