Introduction to Parallel Computing and Parallel Programming
* Registration is required. Please see the registration link below.
This is a short course on High Performance Computing (HPC) and High Throughput Computing (HTC) for scientists and engineers. The goal is to introduce the concepts of parallel computing and parallel programming to anyone whose research might benefit from parallel computation.
Many researchers have simple computational problems that require vast computational resources. This course is designed to jump-start these researchers, and also provide the parallel computing cornerstone for those with more complex programming needs.
Basic programming proficiency in C, C++, Fortran, Java, Matlab, or a similar programming language. Students will learn how to run simple programs in parallel on a grid or cluster, and how to parallelize simple programs for execution on a cluster or shared memory system.
- Introduction to Unix and Shell Scripting
- The Unix Standard
- Using Unix
- Automating and Documenting Research with Shell Scripts
- Overview of High Throughput Computing (HTC) and High Performance Computing (HPC)
- Clusters, Grids, and Shared Memory Parallelism
- Embarrassingly Parallel Computing
- Parallel Programming
- Job Scheduling with SLURM and HTCondor
- The Role of a Job Scheduler
- Overview of Popular Schedulers
- Using SLURM
- Using HTCondor
- Introduction to distributed parallel programming with Message Passing Interface (MPI)
- Applications of Distributed Parallel Programming with Message Passing
- A Simple Example MPI Program
- Introduction to shared memory programming with OpenMP
- Applications of Shared Memory Programming
- Simple OpenMP Example Programs
Where and When
Tuesdays and Thursdays, July 14th, 16th, 21st, and 23rd, 2015.
9:00am to 4:00pm
University of Wisconsin -- Milwaukee
Engineering and Math Sciences
3200 N. Cramer St.
PC workstations are provided for up to 24 registrants. Please bring a laptop if you have one to ensure that everyone has access to a computer.
Registration is open to the community.
Please direct any questions to email@example.com.