Short Courses

Last Updated: January 14, 2020

Every semester, HPRC holds short courses ranging in topics for beginning, intermediate, and advanced users. Every semester we start with the Introduction to Linux course. It covers material that is prerequisite to ALL other short courses. This, along with the Introduction to the Ada and Terra Clusters course form the absolute minimum basis for using the respective clusters effectively. All courses will be delivered in an interactive style through a live login session. Attendants can bring laptops although installed workstations will be available. In general, slides and other supplemental materials are available on each course page.

Please make sure you have a valid HPRC account if you want to follow the material by logging in. If you do not have an account, you can apply here.

Each short course is a one day course. Registration is required with a seating limit of ~45.

For our course offerings from previous semesters, please consult this page.

Short Course List for Spring 2020

Introduction to Linux

Instructor: Dylan Rodriguez

Time: Friday, January 24, 10:00AM-12:30PM

Location: SCC 102.B

Description: Topics include: basic commands, process and filesystem concepts, shells, I/O redirection, and shell scripts. The material covered here is a prerequisite to most other courses.

Prerequisites: None

View Details In-Person Attendee Registration Remote Attendee Registration

Introduction to the Ada and Terra Clusters

Instructor: Mark Huang, Michael Dickens

Time:

  • Friday, January 24, 1:30PM-4:00PM
  • Friday, January 31, 10:00AM-12:30PM

Location: SCC 102.B

Description: Covers a variety of topics relevant to computing on the Ada and Terra clusters, demonstrated through a live login session. The topics include, but are not limited to, basic system information, compiling and running programs, as well as batch processing. Use of the batch system will be demonstrated with real-time examples. Each session covers material for BOTH clusters.

Prerequisites: Unix/Linux skills; Ada account.

View Details In-Person Attendee Registration Remote Attendee Registration

Data Management Practices

Instructor: Dylan Rodriguez

Time: Friday, January 31, 1:30PM-4:00PM

Location: SCC 102.B

Description: Explore the basics of storing, organizing, finding, managing, moving and munging the data you use in your research.

Prerequisites: None

View Details In-Person Attendee Registration Remote Attendee Registration

Introduction to Python

Instructor: Keith Jackson

Time: Friday, February 7, 10:00AM-12:30PM

Location: SCC 102.B

Description: Covers basic topics in programming using Python. Topics include variables, data types, control statements, functions, I/O, modules, interactive execution of python statements, python scripts, dictionaries, sorting, and regular expressions.

Prerequisites: None

View Details In-Person Attendee Registration Remote Attendee Registration

Introduction to Scientific Python

Instructor: Tri Minh Pham

Time: Friday, February 7, 1:30PM-4:00PM

Location: SCC 102.B

Description: This short course covers several topics and packages for scientific programming in Python.

Prerequisites: Intro to Python course or basic Python knowledge

View Details In-Person Attendee Registration Remote Attendee Registration

Introduction to Fortran

Instructor: Jian Tao

Time: Friday, February 21, 10:00AM-12:30PM

Location: SCC 102.B

Description: Covers basic topics in numerical computation and scientific programming using Fortran 90/95. Topics include basic language elements and concepts, intrinsic functions and usage, programming best practice, and relevant open source tools. This is a basic to intermediate level course.

Prerequisites: None

View Details

Introduction to Julia

Instructor: Jian Tao

Time: Friday, February 21, 1:30PM-4:00PM

Location: SCC 102.B

Description: Covers basic topics in numerical computation and scientific programming using the Julia programming language. Topics include basic language elements and concepts, programming best practice, and relevant open source tools. This is a basic to intermediate level course.

Prerequisites: None

View Details

Introduction to MATLAB

Instructor: Jian Tao

Time: Friday, February 28, 10:00AM-12:30PM

Location: SCC 102.B

Description: Covers basic topics in MATLAB programming. Topics include basic commands; vectors and matrices; control loops and other basic programming blocks; 2D plotting; running MATLAB on Ada.

Prerequisites: Intro to Ada course, if Ada account is required.

View Details In-Person Attendee Registration Remote Attendee Registration

Introduction to MATLAB Parallel Toolbox

Instructor: Marinus Pennings

Time: Friday, February 28, 1:30PM-4:00PM

Location: SCC 102.B

Description: This MATLAB course will introduce the MATLAB parallel toolbox. Topics discussed include cluster profiles, parallel pools, parfor, spmd, distributed data, and GPU computing. We will also demonstrate how to run parallel MATLAB jobs on the HPRC clusters.

Prerequisites: Basic MATLAB skills. Ada account

View Details

Introduction to PySpark

Instructor: Jian Tao

Time: Friday, March 6, 10:00AM-12:30PM

Location: SCC 102.B

Description: PySpark is the Python API for Apache Spark, which is a popular open source framework that enables fast data processing at scale. PySpark is a great tool for performing exploratory data analysis (EDA) at scale, building machine learning models, and deploying large scale data analysis pipelines. In this short course, we will show how to leverage the functionalities of Apache Spark with its Python APIs and use PySpark to perform common tasks on both laptops and supercomputers.

Prerequisites: Python

View Details

Introduction to Perl

Instructor: Keith Jackson

Time: Friday, March 6, 1:30PM-4:00PM

Location: SCC 102.B

Description: Covers basic to intermediate level topics with live illustrations and hands-on exercises using the Jupyter notebook web application.

Prerequisites: None

View Details In-Person Attendee Registration Remote Attendee Registration

Introduction to R

Instructor: Shichen Wang

Time: Friday, March 20, 10:00AM-12:30PM

Location: SCC 102.B

Description: This course aims at introducing R as a software environment for statistical computing.

Prerequisites: Unix/Linux skills. Ada account.

View Details

SLURM Job Scheduling

Instructor: Michael Dickens

Time: Friday, March 20, 1:30PM-4:00PM

Location: SCC 102.B

Description: Covers various job scheduling approaches using the Slurm Workload Manager on Terra.

Prerequisites: Unix/Linux skills; HPRC account

View Details

Introduction to Deep Learning with TensorFlow

Instructor: Jian Tao

Time: Friday, March 27, 10:00AM-12:30PM

Location: SCC 102.B

Description: Covers using TensorFlow for deep learning.

Prerequisites: Experience with Python

View Details

Introduction to CUDA

Instructor: Jian Tao

Time: Friday, March 27, 1:30PM-4:00PM

Location: SCC 102.B

Description: Covers basic topics in CUDA programming on NVIDIA GPUs. Topics include CUDA architecture; basic language usage of CUDA C/C++; writing, executing, CUDA code.

Prerequisites: Unix/Linux skills; Experience with C or C++; Ada account is required for those who do not have access to a machine that can execute CUDA code; Intro to Ada course, if Ada account is required.

View Details

Introduction to Code Parallelization using OpenMP

Instructor: Marinus Pennings

Time: Friday, April 3, 10:00AM-12:30PM

Location: SCC 102.B

Description: Covers code parallelization for shared memory systems using the OpenMP standard of directives and calls.

Prerequisites: Working knowledge of C/C++ or FORTRAN; Intro to Linux or Unix/Linux skills; Ada account.

View Details

Introduction to Code Parallelization using MPI

Instructor: Marinus Pennings

Time: Friday, April 3, 1:30PM-4:00PM

Location: SCC 102.B

Description: Covers basic concepts in MPI, including distributed memory systems, messages, blocking/non-blocking, point-to-point communication, collective communication.

Prerequisites: Working knowledge of C/C++ or FORTRAN; Ada account.

View Details