Short Course Description
Introduction to Supercomputing is a comprehensive short course designed to provide beginners with foundational knowledge and hands-on experience in high-performance computing (HPC). Over the span of 1–2 days, participants will learn the basics of supercomputing, explore its architecture, and understand how to navigate an HPC environment. The course is tailored for students, researchers, and professionals who are new to HPC and are seeking computational solutions for their work. By the end of the course, participants will be equipped with the knowledge and skills to confidently engage with HPC systems and apply them to their fields.
Course Content Overview
Day 1: Foundations of Supercomputing
- Session 1: Introduction to Supercomputing
- Definition, history, and applications of supercomputing.
- Differences between traditional computing and HPC.
- Real-world use cases in science, engineering, and AI.
- Session 2: Supercomputer Architecture
- Overview of nodes, processors, memory, and interconnects.
- Parallel computing concepts: shared vs. distributed memory.
- Clusters and job scheduling systems.
- Session 3: Introduction to HPC Systems
- Logging into an HPC system (e.g., SSH).
- Understanding HPC file systems and software management.
- Session 4: Exploring Use Cases
- Applications of HPC across disciplines.
- Interactive discussion on participants’ areas of interest.
Day 2: Practical Hands-On Experience
- Session 5: Basic Linux for HPC
- Command-line navigation and file management.
- Transferring files between systems.
- Session 6: Job Scheduling Basics
- Overview of job schedulers (e.g., SLURM).
- Writing, submitting, and managing basic job scripts.
- Session 7: Hands-On Lab
- Practice navigating the HPC environment.
- Writing and running sample job scripts.
- Monitoring job performance and outputs.
- Session 8: Performance Considerations
- Resource allocation and optimization for beginners.
- Introduction to parallel processing.
- Session 9: Challenges and Next Steps
- Addressing common first-time challenges.
- Resources for ongoing learning and skill development.
Learning Outcomes
- Gain a foundational understanding of supercomputing and its applications.
- Understand the architecture and key components of HPC systems.
- Develop practical skills for accessing and navigating an HPC environment.
- Write and manage basic job scripts to perform computational tasks.
- Build confidence to incorporate HPC into their professional or academic projects.