Howto OG matlab tutorial
From ImageWiki
Line 13: | Line 13: | ||
% Remember to use absolute paths when reading and writing files. Like this | % Remember to use absolute paths when reading and writing files. Like this | ||
X=10; | X=10; | ||
- | save(' | + | save('data.mat','X'); |
clear all; | clear all; | ||
- | load(' | + | load('data.mat'); |
X | X | ||
Revision as of 09:55, 10 October 2013
Assume that I have matlab script that I want to start. All files for this example are stored in /home/sporring/test_officegrid.
The matlab script is called mytestscript.m and looks like this:
% This script is for testing Office Grid for i=1:10 i X=ones(1,268435456); % Allocate 2 GB of memory pause(3) clear X; end % Remember to use absolute paths when reading and writing files. Like this X=10; save('data.mat','X'); clear all; load('data.mat'); X % Remember to call exit at the end of your matlab script (this is a problem % with our current matlab installation, ver. 7.3.0.298) exit();
My program, mytestscript.m, on the server is located in /home/sporring/test_officegrid. In order to setup the environment and start matlab I have made a script called run.sh:
- !/bin/sh
cd /home/sporring/test_officegrid; /usr/local/bin/matlab -nodesktop -nojvm -nosplash -logfile matlab.out -r mytestscript
After creating this file, you should make it executable as a script by:
chmod u+x run.sh
Now we are ready to start the script as an OG job. Login to imagediskserver3 (192.168.10.103) and using the command line interface do the following:
og_shcmd -i -p linux /home/sporring/test_officegrid/run.sh
If you do not specify the walltime of the script it will stop your script after 1H. To ensure that the program will run for at least 1 day, use
og_shcmd -i -w 1:0:0:0 -p linux /home/sporring/test_officegrid/run.sh
The program runs and writes all matlab output in matlab.out, and reads a file called data.mat.
See section below on how to read back the text output from stdout and stderr. Or try to do:
og_res -i <job_id>
Which should print the text output from your matlab script.