===== MATLAB Jobs =====
==== MATLAB parallel job ====
=== Execution of a parallel job with MATLAB ===
cp -p /hpc/share/samples/matlab/pi_greco_parallel.m .
Script ''pi_greco_parallel.m'':
parpool('local');
tic
N_int=100;
N_int_0=1e2;
N_int_f=1e7;
passo=ceil((N_int_f-N_int_0)/N_int);
N=N_int_0:passo:N_int_f;
l=length(N);
res=zeros(l,1);
parfor i=1:l
Z=rand(2,N(i));
res(i)=sum((Z(1,:)-0.5).^2+(Z(2,:)-0.5).^2<0.5^2)/(N(i)*0.5^2);
end
disp(res(end))
toc
Script ''matlab_parallel.sh'':
#!/bin/sh
#SBATCH --job-name=matlab_parallel
#SBATCH --output=%x.o%j
#SBATCH --error=%x.e%j
#SBATCH --nodes=1
#SBATCH --ntasks-per-node=4
#SBATCH --partition=cpu
#SBATCH --mem=8G
#SBATCH --time=0-00:30:00
##SBATCH --account=
hostname
module load matlab/R2022a
matlab -nodisplay -r pi_greco_parallel
Submitting ''matlab_parallel.sh'':
sbatch matlab_parallel.sh
/**
* external link (replaced by internal link)
[[https://www.hpc.unipr.it/dokuwiki_test/doku.php?id=calcoloscientifico:userguide#matlab_jobs|go back on level]]
*/
[[calcoloscientifico:userguide:matlab:parallel|go back one level]]