open-discussion > PSOM on a cluster << getting started
Showing 1-3 of 3 posts
Nov 24, 2014 03:11 PM | Jason Steffener
PSOM on a cluster << getting started
I have just started to use PSOM on a cluster and would like some
pointers please. I would ultimately like to use PSOM to launch my
own code written in MatLab as an OCTAVE job on a CalcuCanda
cluster.
I am starting with this simple test:
cmd = 'randn(10,2)';
script = '/home/steffejr/Tester1';
opt = {};
opt.mode = 'qsub';
logs = {};
logs.txt = '/home/steffejr/logTest.txt';
logs.eqsub = '/home/steffejr/';
logs.oqsub = '/home/steffejr/';
logs.failed = 'FAILED';
[flag_failed,msg] = psom_run_script(cmd,script,opt,logs)
And the job gives this error:
/var/spool/torque/mom_priv/jobs/98281.mp2.m.SC: line 1: /usr/bin/octave: No such file or directory
Is there an example or tutorial that can help me get started please?
Thank you,
Jason
I am starting with this simple test:
cmd = 'randn(10,2)';
script = '/home/steffejr/Tester1';
opt = {};
opt.mode = 'qsub';
logs = {};
logs.txt = '/home/steffejr/logTest.txt';
logs.eqsub = '/home/steffejr/';
logs.oqsub = '/home/steffejr/';
logs.failed = 'FAILED';
[flag_failed,msg] = psom_run_script(cmd,script,opt,logs)
And the job gives this error:
/var/spool/torque/mom_priv/jobs/98281.mp2.m.SC: line 1: /usr/bin/octave: No such file or directory
Is there an example or tutorial that can help me get started please?
Thank you,
Jason
Nov 24, 2014 06:11 PM | Pierre Bellec
RE: PSOM on a cluster << getting started
Dear Jason,
You need to have octave available. I don't know which cluster you are using. On guillimin I have the following line in my .bashrc
module load octave/3.8.1
Also, psom_run_script is not meant to be used directly, but rather caller through psom_run_pipeline. Here is a tutorial on this tool:
http://psom.simexp-lab.org/how_to_use_ps...
And a tutorial on psom's configuration:
http://psom.simexp-lab.org/psom_configur...
On guillimin, I change the following variables on psom_gb_vars.m
gb_psom_command_octave = 'octave';
gb_psom_qsub_options = '-A XXX -q sw -l walltime=03:00:00';
gb_psom_mode = 'qsub';
gb_psom_max_queued = 300;
gb_psom_nb_resub = 5;
pbs_jobid = getenv('PBS_JOBID');
if isempty(pbs_jobid)
gb_psom_tmp = '/tmp/';
else
gb_psom_tmp = ['/localscratch/' pbs_jobid filesep];
end
This last block is a bit tricky: on guillimin the temporary folder is defined by a variable environment which does not exist on the login node. Also you have to replace "XXX" by the number of you compute canada account (mine is something like gsf-xxx-xx).
I hope this helps,
Pierre
You need to have octave available. I don't know which cluster you are using. On guillimin I have the following line in my .bashrc
module load octave/3.8.1
Also, psom_run_script is not meant to be used directly, but rather caller through psom_run_pipeline. Here is a tutorial on this tool:
http://psom.simexp-lab.org/how_to_use_ps...
And a tutorial on psom's configuration:
http://psom.simexp-lab.org/psom_configur...
On guillimin, I change the following variables on psom_gb_vars.m
gb_psom_command_octave = 'octave';
gb_psom_qsub_options = '-A XXX -q sw -l walltime=03:00:00';
gb_psom_mode = 'qsub';
gb_psom_max_queued = 300;
gb_psom_nb_resub = 5;
pbs_jobid = getenv('PBS_JOBID');
if isempty(pbs_jobid)
gb_psom_tmp = '/tmp/';
else
gb_psom_tmp = ['/localscratch/' pbs_jobid filesep];
end
This last block is a bit tricky: on guillimin the temporary folder is defined by a variable environment which does not exist on the login node. Also you have to replace "XXX" by the number of you compute canada account (mine is something like gsf-xxx-xx).
I hope this helps,
Pierre
Nov 25, 2014 09:11 PM | Jason Steffener
RE: PSOM on a cluster << getting started
Thank you for the guidance.
I followed it and have set up and run a pipeline.
Jason
I followed it and have set up and run a pipeline.
Jason