Research Computing Services Courses: Difference between revisions
Line 7: | Line 7: | ||
Research Computer Services provides support for users of the Advanced Research Computing (ARC) infrastructure at the University of Calgary. | Research Computer Services provides support for users of the Advanced Research Computing (ARC) infrastructure at the University of Calgary. | ||
One of the critical skills required to fully utilize this resource is to have an understanding of the Linux command line. | One of the critical skills required to fully utilize this resource is to have an understanding of the Linux command line. | ||
Prerequisites: | Prerequisites: |
Revision as of 07:44, 22 February 2021
Research Computing Services Course Offerings
Winter 2021
Introduction to the Linux Command Line
Research Computer Services provides support for users of the Advanced Research Computing (ARC) infrastructure at the University of Calgary. One of the critical skills required to fully utilize this resource is to have an understanding of the Linux command line.
Prerequisites:
- You should have basic computer skills
- You need a UCalgary IT account (if you have a UCalgary email account you have an IT account)
- A computer with an up-to-date web browser
Recommended:
- A reasonably sized display or two displays, this is a hands on class and you will need to work through examples
To Register for this course visit:
Introduction to Scheduling and Parallel Models of Computation
In this workshop, we will introduce basic ideas from parallel computing such as task graphs and resource scheduling. The first half of the talk will explain the difference between serial computations, shared memory parallelism, and distributed memory parallelism as they relate to understanding the resources that a computation is capable of using efficiently. The second half of the talk will introduce a workflow for computing that takes advantage of the many benefits of using a job scheduler. This workflow will emphasize methods for tracking resource utilization and modeling job performance to improve job requests. Throughout the workshop, attendees will apply these techniques to a simple (but scalable) example problem to develop their own scaling study and optimize a job script.
Prerequisites:
- You should have basic computer skills
- You need a UCalgary IT account (if you have a UCalgary email account you have an IT account)
- A VPN for connecting to the UCalgary network
- A terminal (on a Mac) or a terminal emulator like PuTTy (on a PC)
Recommended:
- A basic knowledge of the linux command line to work through the problems
- A basic knowledge of Python (functions and for-loops) to understand the examples
Compiling Software
In this workshop, we will introduce some of the basic ideas of compiling software from source code. The workshop will begin with a high-level overview of the ideas used in compiling software. Throughout the talk, we will discuss specific examples from compiling C libraries on Linux using GCC, Make, and Autotools. An understanding of these technologies is required for handling the most common custom software builds on High-Performance Computing clusters. We will introduce strategies for build process debugging and test these skills by building R from source to enable integration with some common high-performance statistical software.
Prerequisites:
- You should have basic computer skills
- You need a UCalgary IT account (if you have a UCalgary email account you have an IT account)
- A VPN for connecting to the UCalgary network
- A terminal (on a Mac) or a terminal emulator like PuTTy (on a PC)
Recommended:
- A basic knowledge of the linux command line to work through the problems
- A very small amount of exposure to the C programming language will make the main example easier to follow
RCS Course materials and references
The Intro to Linux Command Line is based on the excellent course from the Software Carpentry group.