<?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: running SAS in parallel using SLURM job arrays in Administration and Deployment</title>
    <link>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/401779#M10606</link>
    <description>&lt;P&gt;Unfortunately my attempt to memorize the&amp;nbsp;sysparm value:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;%let TskID=&amp;amp;sysparm;&lt;BR /&gt;%put &amp;amp;TskID;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;still appears to be empty.&amp;nbsp; Why should your command:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;%put &amp;amp;=sysparm;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;work so beautifully but not mine?&amp;nbsp; I appreciate your suggestions!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Fri, 06 Oct 2017 14:12:05 GMT</pubDate>
    <dc:creator>sfinch</dc:creator>
    <dc:date>2017-10-06T14:12:05Z</dc:date>
    <item>
      <title>running SAS in parallel using SLURM job arrays</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/401475#M10580</link>
      <description>&lt;P&gt;Has anyone ever succeeded in running SAS in parallel on a SLURM-based Linux cluster computer using what are known as "job arrays"?&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A href="https://rcc.uchicago.edu/docs/running-jobs/array/index.html" target="_blank"&gt;https://rcc.uchicago.edu/docs/running-jobs/array/index.html&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;In particular, I need to pass a SLURM environment variable SLURM_ARRAY_TASK_ID from my batch shell script to SAS.&amp;nbsp; This task has completely defeated me.&amp;nbsp; &amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Google searches haven't helped.&amp;nbsp; I see mention of multi-threading, but that's not quite the same.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I would be so appreciative for some expert help!&lt;/P&gt;</description>
      <pubDate>Thu, 05 Oct 2017 18:33:04 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/401475#M10580</guid>
      <dc:creator>sfinch</dc:creator>
      <dc:date>2017-10-05T18:33:04Z</dc:date>
    </item>
    <item>
      <title>Re: running SAS in parallel using SLURM job arrays</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/401485#M10581</link>
      <description>&lt;P&gt;I don't know anything about SLURM but the SYSGET SAS function reads OS environment variables.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Also SAS jobs can be run in parallel using SAS Grid or SAS/CONNECT technology.&lt;/P&gt;</description>
      <pubDate>Thu, 05 Oct 2017 19:06:56 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/401485#M10581</guid>
      <dc:creator>SASKiwi</dc:creator>
      <dc:date>2017-10-05T19:06:56Z</dc:date>
    </item>
    <item>
      <title>Re: running SAS in parallel using SLURM job arrays</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/401486#M10582</link>
      <description>&lt;P&gt;Unfortunately the SAS command&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;%let SLURM_ARRAY_TASK_ID=%SYSGET(SLURM_ARRAY_TASK_ID);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;does not seem to work.&amp;nbsp; I'm going to guess that SLURM_ARRAY_TASK_ID isn't an "environment variable" in the same sense you mean, but I could be wrong.&amp;nbsp; Thanks for your reply!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 05 Oct 2017 19:15:53 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/401486#M10582</guid>
      <dc:creator>sfinch</dc:creator>
      <dc:date>2017-10-05T19:15:53Z</dc:date>
    </item>
    <item>
      <title>Re: running SAS in parallel using SLURM job arrays</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/401492#M10583</link>
      <description>&lt;P&gt;If you could get your shell script to also write it to a "proper" OS environment variable as well that might work. Someone who is more familiar with Unix should be able to help.&lt;/P&gt;</description>
      <pubDate>Thu, 05 Oct 2017 19:37:46 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/401492#M10583</guid>
      <dc:creator>SASKiwi</dc:creator>
      <dc:date>2017-10-05T19:37:46Z</dc:date>
    </item>
    <item>
      <title>Re: running SAS in parallel using SLURM job arrays</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/401499#M10584</link>
      <description>&lt;P&gt;Either add&lt;/P&gt;
&lt;PRE&gt;export SLURM_ARRAY_TASK_ID&lt;/PRE&gt;
&lt;P&gt;to your shell script before starting SAS, or use the -sysparm option to hand&amp;nbsp;&lt;SPAN&gt;SLURM_ARRAY_TASK_ID over on the SAS commandline.&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 05 Oct 2017 20:09:28 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/401499#M10584</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2017-10-05T20:09:28Z</dc:date>
    </item>
    <item>
      <title>Re: running SAS in parallel using SLURM job arrays</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/401717#M10598</link>
      <description>&lt;P&gt;Thanks for your suggestions!&amp;nbsp; I've tried many variations, including the lines:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;#!/bin/bash&lt;/P&gt;&lt;P&gt;#SBATCH --job-name=job_array&lt;BR /&gt;#SBATCH --output=job_array_%a_out.txt&lt;BR /&gt;#SBATCH --error=job_array_%a_err.txt&lt;BR /&gt;#SBATCH --array=1-3&lt;/P&gt;&lt;P&gt;echo "My SLURM_ARRAY_TASK_ID: " $SLURM_ARRAY_TASK_ID&lt;BR /&gt;export SLURM_ARRAY_TASK_ID&lt;BR /&gt;sas -noterminal job_array.sas -sysparm $SLURM_ARRAY_TASK_ID&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;in my shell script and the lines&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;%let TskID=%scan(&amp;amp;sysparm,1);&lt;BR /&gt;%put &amp;amp;TskID;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;in my SAS program.&amp;nbsp; Regrettably the value of TskID seems to be empty; the integers 1, 2, 3 seem not be passing into SAS.&amp;nbsp; More help is definitely needed and appreciated!&lt;/P&gt;</description>
      <pubDate>Fri, 06 Oct 2017 12:30:52 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/401717#M10598</guid>
      <dc:creator>sfinch</dc:creator>
      <dc:date>2017-10-06T12:30:52Z</dc:date>
    </item>
    <item>
      <title>Re: running SAS in parallel using SLURM job arrays</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/401723#M10599</link>
      <description>&lt;P&gt;With the export in place, did you try&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;%let tskid=%sysget(SLURM_ARRAY_TASK_ID);&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;?&lt;/P&gt;</description>
      <pubDate>Fri, 06 Oct 2017 12:46:19 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/401723#M10599</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2017-10-06T12:46:19Z</dc:date>
    </item>
    <item>
      <title>Re: running SAS in parallel using SLURM job arrays</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/401731#M10600</link>
      <description>&lt;P&gt;Yes.&amp;nbsp; With the export in place, the SAS lines:&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;%let TskIDa=%SYSGET(SLURM_ARRAY_TASK_ID);&lt;BR /&gt;%put &amp;amp;TskIDa;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;unfortunately give empty TskIDa.&amp;nbsp; Any other ideas?&amp;nbsp; I'm grateful for your help.&amp;nbsp; If passing the&amp;nbsp;SLURM_ARRAY_TASK_ID&amp;nbsp;parameter from&amp;nbsp;shell script&amp;nbsp;to SAS is impossible, then this is a disappointment.&amp;nbsp; I don't wish to give up quite yet, but&amp;nbsp;I'm at a loss what to try next.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 06 Oct 2017 13:01:49 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/401731#M10600</guid>
      <dc:creator>sfinch</dc:creator>
      <dc:date>2017-10-06T13:01:49Z</dc:date>
    </item>
    <item>
      <title>Re: running SAS in parallel using SLURM job arrays</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/401748#M10601</link>
      <description>&lt;P&gt;Are you sure you have a standard SAS command line script and not some local script that is "eating" your command line arguments?&lt;/P&gt;
&lt;P&gt;Try just passing in any text to the SYSPARM option.&amp;nbsp; So make a trivial SAS program.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;%put &amp;amp;=sysparm;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;Then call it with the -sysparm option.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;sas -sysparm fred myprogram.sas&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;In the log you should see&lt;/P&gt;
&lt;PRE&gt;SYSPARM=fred&lt;/PRE&gt;
&lt;P&gt;If that works then replace fred in the command string with the reference to your environment variable.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 06 Oct 2017 13:26:39 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/401748#M10601</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2017-10-06T13:26:39Z</dc:date>
    </item>
    <item>
      <title>Re: running SAS in parallel using SLURM job arrays</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/401763#M10602</link>
      <description>&lt;P&gt;Thank you.&amp;nbsp; The command in my shell script:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;sas -noterminal trivial.sas -sysparm $SLURM_ARRAY_TASK_ID&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;plus your suggested command in my SAS program:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;%put &amp;amp;=sysparm;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;indeed gives me an integer (1, 2 or 3).&amp;nbsp; Thus something is wrong with my SAS commands:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;%let TskID=%scan(&amp;amp;sysparm,1);&lt;BR /&gt;%put &amp;amp;TskID;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;which give TskID as empty.&amp;nbsp; How should I correct these?&amp;nbsp;I need, of course, to use TskID&amp;nbsp;later in my program.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 06 Oct 2017 13:51:35 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/401763#M10602</guid>
      <dc:creator>sfinch</dc:creator>
      <dc:date>2017-10-06T13:51:35Z</dc:date>
    </item>
    <item>
      <title>Re: running SAS in parallel using SLURM job arrays</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/401771#M10605</link>
      <description>If you want to just assume that the caller has passed the proper value in SYSPARM then just remove the %SCAN() function call.&lt;BR /&gt;%let tskid=&amp;amp;sysparm;&lt;BR /&gt;</description>
      <pubDate>Fri, 06 Oct 2017 14:00:35 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/401771#M10605</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2017-10-06T14:00:35Z</dc:date>
    </item>
    <item>
      <title>Re: running SAS in parallel using SLURM job arrays</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/401779#M10606</link>
      <description>&lt;P&gt;Unfortunately my attempt to memorize the&amp;nbsp;sysparm value:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;%let TskID=&amp;amp;sysparm;&lt;BR /&gt;%put &amp;amp;TskID;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;still appears to be empty.&amp;nbsp; Why should your command:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;%put &amp;amp;=sysparm;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;work so beautifully but not mine?&amp;nbsp; I appreciate your suggestions!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 06 Oct 2017 14:12:05 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/401779#M10606</guid>
      <dc:creator>sfinch</dc:creator>
      <dc:date>2017-10-06T14:12:05Z</dc:date>
    </item>
    <item>
      <title>Re: running SAS in parallel using SLURM job arrays</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/401797#M10607</link>
      <description>&lt;P&gt;This simple program should work.&lt;/P&gt;
&lt;PRE&gt;1    %let TskID=&amp;amp;sysparm;
2    %put &amp;amp;TskID;
fred

&lt;/PRE&gt;
&lt;P&gt;There is no reason that %SCAN() shouldn't work either.&amp;nbsp; You could check to see if SYSPARM has gotten any strange binary characters into it that are confusing SAS into thinking it has macro quoting. Try a simple data step and see it if helps. So you might use SYMGET() to pull the value SYSPARM and then use PUT with $HEX format to see if there are any strange characters in the first 25 bytes.&amp;nbsp; You could then use CALL SYMPUTX() to generate your new macro variable.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data _null_;
  length tskid $200 ;
  tskid=symget('sysparm');
  put tskid = / tskid $hex50. ;
  call symputx('tskid',tskid);
run;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;If it still doesn't work then either your shell script or your SAS code is messing up somewhere.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Perhaps there is something in your larger shell program that is causing the -sysparm option to not be properly set on the command line.&amp;nbsp; Perhaps somehow the environment variable reference is being deferred to some later time where it evaluates to empty? Or these is some other line in the code that is clearing the value before the call to SAS?&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Same thing for the SAS side. Do you have other statements that are changing TSKID or SYSPARM? Are you sure you are not creating TSKID in a local symbol table and then looking for it in the global symbol table?&lt;/P&gt;</description>
      <pubDate>Fri, 06 Oct 2017 14:41:25 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/401797#M10607</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2017-10-06T14:41:25Z</dc:date>
    </item>
    <item>
      <title>Re: running SAS in parallel using SLURM job arrays</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/401816#M10611</link>
      <description>&lt;P&gt;Thanks for all your thoughts.&amp;nbsp; I implemented your data step and obtained the following printout in the log file:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;tskid=3&lt;BR /&gt;33202020202020202020202020202020202020202020202020&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;What is meaning of the 50-character string?&amp;nbsp; It looks ominous.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;SLURM_ARRAY_TASK_ID is analogous to a do loop variable,&amp;nbsp;covering the integers {1, 2, 3}, however, all at once.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I said &lt;EM&gt;the&lt;/EM&gt; log file, but in fact I have three copies of&amp;nbsp;SAS&amp;nbsp;running in parallel.&amp;nbsp; Does the difficulty reside in the fact that outcomes for three simultaneous processes are being collapsed into just &lt;EM&gt;one&lt;/EM&gt; file?&amp;nbsp; Maybe collisions are making this unworkable.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This is why I need TskID -- to distinguish between the processes -- but I don't know how to introduce it into SAS's naming of log files, etc., to prevent the collisions from taking place.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 06 Oct 2017 15:30:09 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/401816#M10611</guid>
      <dc:creator>sfinch</dc:creator>
      <dc:date>2017-10-06T15:30:09Z</dc:date>
    </item>
    <item>
      <title>Re: running SAS in parallel using SLURM job arrays</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/401819#M10612</link>
      <description>&lt;P&gt;Your dump of the hex codes looks fine, '33'x is the digit 3 and '20'x is a space.&amp;nbsp; SAS uses fixed length fields so all variables are padded with spaces.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Perhaps your only issue is that you are overwriting your SAS logs?&lt;/P&gt;
&lt;P&gt;Use the -log and -print command line options to re-direct the SAS log and listing outputs to different files.&lt;/P&gt;
&lt;P&gt;For example you might add run1, run2, etc to the filenames.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;#!/bin/ksh
n=1
fn=myprogram
sas -sysparm $n -sysin ${fn}.sas -log ${fn}_run${n}.log -print ${fn}_run${n}.lst&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;You might also want to look into the -stdio command line option which will take the program code from standard input and direct the log and listing to standard output and standard error.&lt;/P&gt;</description>
      <pubDate>Fri, 06 Oct 2017 16:00:27 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/401819#M10612</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2017-10-06T16:00:27Z</dc:date>
    </item>
    <item>
      <title>Re: running SAS in parallel using SLURM job arrays</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/401832#M10613</link>
      <description>&lt;P&gt;Thanks again for these very helpful&amp;nbsp;thoughts!&amp;nbsp; The failure of:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;%let TskID=&amp;amp;sysparm;&lt;BR /&gt;%put &amp;amp;TskID;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;persists, despite my avoidance of SAS log overwriting (as of just now).&amp;nbsp; What a mystery!&amp;nbsp; I will return to this issue in a few days, but appreciate your efforts.&amp;nbsp; Maybe alternatives will arise eventually.&lt;/P&gt;</description>
      <pubDate>Fri, 06 Oct 2017 16:15:07 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/401832#M10613</guid>
      <dc:creator>sfinch</dc:creator>
      <dc:date>2017-10-06T16:15:07Z</dc:date>
    </item>
    <item>
      <title>Re: running SAS in parallel using SLURM job arrays</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/403344#M10678</link>
      <description>&lt;P&gt;The following paragraph:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;LIBNAME myplace "/home/username/";&lt;BR /&gt;DATA myplace.x&amp;amp;TskID;&lt;BR /&gt;&amp;nbsp; LENGTH TskID $200 ;&lt;BR /&gt;&amp;nbsp; TskID=symget('sysparm');&lt;BR /&gt;&amp;nbsp; RETAIN TskID;&lt;BR /&gt;RUN;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;allows me to save TskID to an appropriately-named&amp;nbsp;sas7bdat file (x1, x2 or x3); the parameter value is henceforth available to me later.&amp;nbsp; This solution seems rather cumbersome.&amp;nbsp; I'm curious&amp;nbsp;whether anyone can offer a more elegant way of doing this.&amp;nbsp; As discussed earlier, for some reason&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;%let TskID=&amp;amp;sysparm;&lt;BR /&gt;%put &amp;amp;TskID;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;does not work for me.&amp;nbsp; Thanks very much for your guidance!&lt;/P&gt;</description>
      <pubDate>Wed, 11 Oct 2017 19:59:39 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/403344#M10678</guid>
      <dc:creator>sfinch</dc:creator>
      <dc:date>2017-10-11T19:59:39Z</dc:date>
    </item>
    <item>
      <title>Re: running SAS in parallel using SLURM job arrays</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/403519#M10686</link>
      <description>&lt;P&gt;Interesting.&amp;nbsp; If, in my shell script, I replace&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;#SBATCH --array=1-3&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;by&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;#SBATCH --array=1993-1995&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;(actual years rather than small indices), then the SAS commands&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;%let TskID=&amp;amp;sysparm;&lt;BR /&gt;%put &amp;amp;TskID;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;suddenly work!&amp;nbsp; This is an unexpected but gratifying resolution.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Might&amp;nbsp;such behavior&amp;nbsp;be a SAS bug?&amp;nbsp; Namely, when the environment variable&amp;nbsp;$SLURM_ARRAY_TASK_ID is small, it fails to be properly passed from shell script to SAS program.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 12 Oct 2017 12:39:59 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/403519#M10686</guid>
      <dc:creator>sfinch</dc:creator>
      <dc:date>2017-10-12T12:39:59Z</dc:date>
    </item>
    <item>
      <title>Re: running SAS in parallel using SLURM job arrays</title>
      <link>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/403650#M10689</link>
      <description>-sysparm $SLURM_ARRAY_TASK_ID&lt;BR /&gt;&lt;BR /&gt;was definitely the light at the end of the tunnel: thanks!</description>
      <pubDate>Thu, 12 Oct 2017 18:44:24 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Administration-and-Deployment/running-SAS-in-parallel-using-SLURM-job-arrays/m-p/403650#M10689</guid>
      <dc:creator>sfinch</dc:creator>
      <dc:date>2017-10-12T18:44:24Z</dc:date>
    </item>
  </channel>
</rss>

