Set up MATLAB Parallel Computing T= oolbox from a cluster login node on DAVINCI

Running MAT= LAB on a GPGPU in DAVINCI

MATLAB is a big Java virtual machine, and although Java has made strides= in recent years, it is still slower than running native code. Enter the MA= TLAB Compiler. This allows you to compile MATLAB scripts into binaries that= can run natively in the cluster environment. We can = direct you to resources for compiling frequently run MATLAB scripts int= o binaries and run them on the clusters.

**Task Parallel Application** - The same application t=
hat runs independently on several nodes, possibly with different input para=
meters. There is no communication, shared data, or synchronization po=
ints between the nodes.

**Data Parallel** **Application** - =
The same application that runs on several labs simultaneously, with communi=
cation, shared data, or synchronization points between the labs.

**Lab** - A MATLAB worker in a multicore (Data Paralle=
l) job. One lab is assigned to one worker (core). Thus, a job w=
ith eight labs has eight processor cores allocated to it and will have eigh=
t workers each working together as peers.

**MDCS** - MATLAB Distributed Compute Server. Th=
is is a component of MATLAB that allows our clusters to run MATLAB jobs tha=
t exceed the size of a single compute node (multinode parallel jobs). =
It also allows jobs to run even if there are not enough toolbox licenses a=
vailable for a particular toolbox, so long as the university owns at least =
one license for the particular toolbox.

**PCT** - Parallel Computing Toolbox.

**MATLAB Task** - One segment of a job to be evaluated=
by a worker.

**MATLAB Job** - The complete large-scale operation to=
perform in MATLAB, composed of a set of tasks.

**MATLAB Worker** - The MATLAB session that performs t=
he task computations. If a job needs eight processor cores, then it m=
ust have eight workers.

**Job** - Job submitted via the SLURM job scheduler (a=
lso called SLURM Job).