Course

Different Paradigms of Parallel Computing

Self-paced
2 credits

Enroll

Full course description

Term: Spring 2026

Date: March 13th, 2026

Time: 2:00 p.m. to 4:00 p.m.

Location: Online Only

Instructor: Chris Kuhlman

Presented By: Advanced Research Computing (ARC)

 

Description:

Prerequisites:

  • A beginner-level understanding of computer programming concepts.
  • Basic experience with navigating a computer and running software.
  • Access to a VT network (e.g., on campus or connected to VPN).
  • An ARC account to follow along.

Preferred:

  • Familiarity with working in a Linux shell environment.
  • No additional software (e.g., compilers) is needed; all required software is on the ARC clusters.

Description:

Concurrent (i.e., parallel) programming is a general term meaning that (most often) one execution of one code operates on different pieces of data simultaneously (concurrently) and possibly dynamically by using multiple computing hardware processors (e.g., cores on a compute node, GPU cores/threads on an accelerator). There are many approaches for implementing concurrency. Different methods are used for different purposes and each has its own level-of-effort, complexity, and versatility. This workshop will provide an overview of important concepts in concurrency and will provide examples of different classes of paradigms. The ideas and codes in this workshop are useful if you are writing your own code or running (commercial) software and have to specify run-time features.

Sign up for this course today!

Enroll