HPCC Computing Workshops
HPCC offers a variety of workshops to USC faculty, graduate students, and research staff on topics related to high-performance computing. Unless otherwise noted, workshops are free of charge.
The HPCC supercomputer is a distributed computing environment that contains more than 2,400 machines, as well as high-speed interconnects and a myriad of different storage systems. The cluster’s operating system is CentOS Linux. Torque and Moab are used for job submission and scheduling.
Introduction to Unix/Linux
This workshop covers how to setup the Unix/Linux environment on your computer (login, file transfer, X-window system), basics commands, text editors, compilers, and job submission to the HPCC cluster. This introductory workshop is most suitable for users who are new to parallel and cluster computing.
Graphics Processing Units (GPUs) provide much more computing power and data processing capability than conventional computing architectures. Continuous improvements in GPU computing technology have enabled researchers to achieve substantial performance gains in the areas of climate modeling, materials simulations, financial modeling, MRI imaging, and health science applications.
In 2013, HPCC deployed a 264-node, GPU-based cluster in which each node harnesses dual-octacore Intel Xeon and dual Nvidia K20 GPU boards.
To help the USC community integrate GPU computing capabilities into their research, HPCC hosts several different workshops to facilitate GPU programming, using the Nvidia CUDA toolkit.
Introductory GPU Programming
This workshop—approximately three-hours long—is part lecture and part hands-on session. The lecture provides background on GPU computing, CUDA APIs, and a sample Monte Carlo (MC) code based on CUDA. In the hands-on session, participants learn how to write CUDA programs, submit jobs to the HPCC supercomputer, and evaluate the performance difference between CPU and GPU.
MATLAB is a numerical computing environment and fourth-generation programming language. MATLAB enables matrix manipulations, plotting of functions and data, implementation of algorithms, creation of user interfaces, and interfacing with programs written in other languages, including C, C++, Java, and Fortran.
Parallel and GPU Computing with MATLAB
This workshop covers how to use MATLAB on the HPCC supercomputer’s GPU-enabled nodes to increase processing speed.