Parallel Image Analysis

In this lab you will be learning how to work with UPPMAX. You will enqueue image analysis jobs and collect their results. More often than not, you will write image analysis routines in MATLAB. However, running 20 MATLAB jobs at the same time would require 20 MATLAB licences. The way around this is to use the MATLAB compiler. Below I’ll explain how to compile your MATLAB script to a stand-alone executable, how to install that executable, and how to run it. We’ll use as an example the script and data you can get here: http://www.cb.uu.se/~cris/ParallelImageAnalysis/lab1.zip The ZIP file contains a script msrall.m that repeatedly calls measurethickness.m, using each of the names of the image files in the subdirectory. On a normal computer you’d call this script from within MATLAB, and the images would be processed sequentially. In this example, each image takes a minute or two to be processed. We will enqueue each of these independent tasks as a job on the UPPMAX cluster Kalkyl. They will then, depending on available nodes, be processed in parallel. Note that the measurement function does not return the results as an output variable, like you would normally do. Instead, the result of the computation is saved in a MAT file. The msrall.m script reads in all the MAT files and averages the results.