Research Computing Center (RCC) workshops

The Research Computing Center will host a variety of hands-on workshops in Crerar Library in the upcoming months. All workshops are free, although registration is required. Please join us for training on a number of topics, and to learn about how you can get computational resources, storage, and support for your research projects. For more information and to register for specific workshops, visit http://rcc.uchicago.edu/services/training

Introduction to the Research Computing Center
October 8, 2013, 1:00pm-3:00pm
Birali Runesha
Kathleen A. Zar Room, John Crerar Library

The Research Computing Center (RCC) is a centralized service that provides high-end computing and visualization resources to researchers at the University. This presentation will discuss RCC services and provide information on how to get computing and storage resources on RCC’s computing infrastructure. Participants in the hands-on component will be able to create accounts, compile code, submit jobs using the SLURM batch scheduler, explore the software module system, and have an opportunity to ask specific questions about running their research applications on the Midway HPC cluster.

Prerequisites: Attendees are encouraged to bring a laptop to participate in the hands-on session.

Introduction to GPU Computing with CUDA
October 24, 2013, 1:00pm-3:00pm
Robin Weiss
Kathleen A. Zar Room, John Crerar Library

This workshop will introduce GPU computing with NVIDIA’s CUDA toolkit. The tutorial is appropriate for researchers interested in determining if GPU computing can be leveraged for their particular problem/algorithm. Topics covered will include (1) introduction to GPU devices and hardware architecture (2) how to determine if a problem/algorithm is suitable for GPU computing (3) writing and compiling GPU-based code for RCC’s Midway compute cluster (4) tips and tricks for optimizing performance.

Prerequisites: Attendees are encouraged to bring a laptop to participate in the hands-on session and should have familiarity with the C programming language. Some parallel programming experience will be helpful.

Research Data Management Resources at UChicago
November 13, 2013, 1:00pm-3:00p
Nicholas Labello and Elisabeth Long
Kathleen A. Zar Room, John Crerar Library

Many funding agencies now require documentation of your research data management practices as a prerequisite to receiving an award. This workshop will cover basic strategies for managing your data; available resources and services at UChicago; and writing data management plans that meet the requirements of a variety of funding agencies including NSF, NEH and NIH. Available resources for doing data-intensive computing, transferring and sharing data, working collaboratively on shared data, storage, backup, and version control options will be discussed.

Programming with SWIFT Scripts
December 3, 2013, 1:00pm-4:00pm
Michael Wilde
Computer Classroom, John Crerar Library

Swift is a simple language for writing parallel scripts that run many copies of ordinary programs concurrently as soon as their inputs are available, reducing the need for complex parallel programming. The same script runs on multi-core computers, clusters, grids, clouds, and supercomputers, and is thus an excellent tool for moving your work from laptop or workstation to the RCC parallel Midway cluster. Swift can run a million programs, thousands at a time, launching hundreds per second. This hands-on tutorial will give participants a taste of running simple parallel scrips on Midway and provide pointers for applying it to your own scientific work.

Prerequisites: Attendees are encouraged to bring a laptop to participate in the hands-on session. 

Big-Data Movement Made Easy: An Introduction to Globus-Online
January 15, 2014, 1:00pm-3:00pm
Steve Tuecke
Kathleen A. Zar Room, John Crerar Library

Moving, sharing, and copying files from one platform to another can be challenging when working with large data. This hands-on workshop will introduce researchers to how to move data on the Research Computing Center system using Globus-Online and provide examples of how to integrate it into your research work-flow.

Introduction to the Research Computing Center
January 23, 2014, 1:00pm-3:00pm
Kathleen A. Zar Room, John Crerar Library

The Research Computing Center (RCC) is a centralized service that provides high-end computing and visualization resources to researchers at the University. This presentation will discuss RCC services and provide information on how to get computing and storage resources on RCC’s computing infrastructure. Participants in the hands-on component will be able to create accounts, compile code, submit jobs using the SLURM batch scheduler, explore the software module system, and have an opportunity to ask specific questions about running their research applications on the Midway HPC cluster.

Prerequisites: Attendees are encouraged to bring a laptop to participate in the hands-on session.

Introduction to OpenMP
February 27, 2014, 1:00pm-4:00pm
Douglas Rudd
Computer Classroom, John Crerar Library

This workshop will give a brief introduction to shared-memory parallel programming using the OpenMP standard. It is designed to give people with little to no parallel programming experience knowledge of basic parallel programming topics, examples of applying OpenMP to existing problems, and strategies for avoiding common errors and pitfalls. The tutorial will begin with an introduction to the concept of parallel programming and a discussion of how to identify problems that may benefit from parallelization. This will be followed by an introduction to the OpenMP API, with an emphasis on parallelizing existing serial codes. Examples in both C and Fortran will be provided.

Prerequisites:
* Attendees are encouraged to bring a laptop to participate in the hands-on session
* Familiarity with C, C++, or Fortran

Introductory Python
March 12, 2014, 1:00pm-3:00pm
Nicholas Labello
Computer Classroom, John Crerar Library

Python is a high-level interpreted programming language that allows you to work more quickly and efficiently than other languages. Python is increasingly being used in scientific and parallel computing, and features an extensive collection of community-contributed libraries in almost every area of science. This hands-on workshop will introduce participants to the language and give attendees an opportunity to write several programs.

Speed Up Your Python
April 8, 2014, 1:00pm-3:00pm
Nicholas Labello
Computer Classroom, John Crerar Library

Python’s clean and expressive syntax, rich stack of scientific libraries, and prioritization of programmer productivity have led to its popularization in the scientific computing community. Many Python codes, however, execute slower than equivalent codes written with compiled languages. A wealth of mature options now exist to bring the speed of Python code in line with C and other high-performance languages. This workshop will survey these tools, and discuss a variety of methods for speeding up your Python code with minimal effort. A hands-on session is included.

Introduction to the Research Computing Center
April 16, 2014, 1:00pm-3:00pm
Kathleen A. Zar Room, John Crerar Library

The Research Computing Center (RCC) is a centralized service that provides high-end computing and visualization resources to researchers at the University. This presentation will discuss RCC services and provide information on how to get computing and storage resources on RCC’s computing infrastructure. Participants in the hands-on component will be able to create accounts, compile code, submit jobs using the SLURM batch scheduler, explore the software module system, and have an opportunity to ask specific questions about running their research applications on the Midway HPC cluster.

Prerequisites: Attendees are encouraged to bring a laptop to participate in the hands-on session.

Debugging and Optimization on Midway
April 22, 2014, 1:00pm-4:00pm
Douglas Rudd
Computer Classroom, John Crerar Library

This workshop will give a brief introduction to the available tools for code debugging and profiling on the RCC cluster Midway. General techniques for identifying common bugs and areas causing incorrect results or poor performance will be discussed. The tutorial will begin with identifying common errors using a combination of compiler options, debuggers, and the Valgrind analysis tool. This will be followed by an introduction to techniques of code profiling including gprof, higher-level profiling tools, and hardware performance counters. This course will give examples for serial, OpenMP shared memory, and MPI parallel codes.

Prerequisites: * Familiarity with C, C++, or Fortran.

Introduction to Using Linux
May 13, 2014, 1:00pm-3:00pm
Robin Weiss
Kathleen A. Zar Room, John Crerar Library

This workshop provides a basic introduction to using the Linux command line. It will give participants who have never worked with Linux the fundamental skills necessary for interacting with a Linux-based computer. While the skills learned in this workshop will be transferable to any Linux system, particular focus will be given to using RCC’s Midway compute cluster. Topics covered include navigating the file system, transferring files to and from Linux systems, editing and creating new text files, running programs on the command line, and basic bash scripting.

Prerequisites: * Attendees are encouraged to bring a laptop to participate in the hands-on session

Parallel Programming Using MPI
May 21, 2014, 1:00pm-3:00pm
Birali Runesha
Kathleen A. Zar Room, John Crerar Library

This hands-on workshop will give a basic introduction to parallel programming using MPI message passing library. It will give participants a working knowledge of a subset of the MPI library to allow them to immediately begin writing effective parallel programs. The tutorial will begin with an introduction, background, and basic information for getting started with MPI. This will be followed by a detailed look at the MPI routines that are most useful for new MPI programmers, including MPI environment management, point-to-point communications, and collective communications routines. Examples and hands-on exercises will be provided in C and Fortran.

Prerequisites: * Attendees are encouraged to bring a laptop to participate in the hands-on session * Familiarity with the C or Fortran programming languages