This lesson is being piloted (Beta version)

High Performance Computing with MATLAB

In this lesson, you will learn how to make your MATLAB code run effectively and efficiently using commandline and high-performance computing.

Prerequisites

This lesson assumes some familiarity with programming in MATLAB and basics of command line. If you are not familiar with commandline and shell scripts, then we would recommend working through the Software Carpentry’s The Unix Shell lesson. If you want to brush up your knowledge of MATLAB, then we suggest going through the Software Carpentry’s lesson Programming with MATLAB .

Schedule

Setup Download files required for the lesson
09:00 1. Introduction to HPC in MATLAB What is High-Performance Computing (HPC)?
What are the different options for HPC in MATLAB?
09:30 2. Running MATLAB on Sunbird How do I run MATLAB scripts from the command line?
How do I run MATLAB from Sunbird?
10:10 3. Vectorization What is vectorization in MATLAB?
What are the advantages and disadvantages of vectorization?
10:40 4. Coffee break Break
11:00 5. MATLAB Parallel Computing Toolbox What is Parallel Computing Toolbox in MATLAB?
What is MATLAB Parallel Server?
How to use MATLAB Parallel Server?
11:50 6. parfor How to parallelise for-loops in MATLAB?
What is parfor-loop and how to use it?
What is a parallel pool in MATLAB?
12:40 7. Lunch break Break
13:40 8. spmd What is the spmd construct in MATLAB PCT?
What are distributed and composite arrays?
How to distribute data among workers?
15:10 9. Coffee break Break
15:30 10. Profiling to improve performance How to improve the performance of MATLAB code?
What is profiling?
How to profile our MATLAB code?
16:10 11. mpiprofile How to improve the performance of MATLAB code?
What is profiling?
How to profile your code in MATLAB?
16:50 12. Summary Which techniques should I use for which types of problem?
What should I do next?
17:00 Finish

The actual schedule may vary slightly depending on the topics and exercises chosen by the instructor.