Next Meetup

Fundamentals of HPC Workshop
You are invited to join Research Computing for our upcoming workshop June 25-29th 10:30-12:30 am in ARCE 620. Registration links to attend can be found below. This course has five modules intended to cover introductory as well as more advanced fundamentals of high performance computing. Each module is self-contained and therefore users can choose to take all five or just one or two, depending on ability and interests. Module 1 - Monday, 25 June, 10:30-12:30p. Introduction to Linux: This module is designed for people with little or no experience using the Linux command line. Attendees will gain enough basic expertise to confidently navigate the filesystem, create directories and files, understand processes and shells, and use the most common Linux commands. The class format will be primarily lecture and demonstration, with a few optional exercises. There will be time at the end for more detailed discussion and one-on-one consulting. Module 2 - Tuesday, 26 June, 10:30-12:30p. Introduction to Bash Shell Scripting: Shell scripts are files containing collections of commands for Linux systems that can be executed as programs. They are powerful tools for performing complex and/or repetitive tasks. This course will teach the basics of scripting with the most common Linux shell, the Bourne Again shell (bash). Attendees will learn how to initialize variables, do simple arithmetic, use logic statements, implement do loops, and create functions within bash shell scripts. The class format will be primarily lecture and demonstration, with a few optional exercises. There will be time at the end for more detailed discussion and one-on-one consulting. (Attendees should have a basic knowledge of Linux as a prerequisite.) Module 3 - Wednesday, 27 June, 10:30-12:30p. HPC Job Submission and Load Balancing: This course will cover the basics of job submission on the CU’s Summit supercomputing cluster. Attendees will learn to submit both interactive and batch jobs using the Slurm workload manager. The course will also discuss the CURC Load Balance tool, which enables multiple tasks to be optimally balanced and executed within a single batch job. The class format will be primarily lecture and demonstration. There will be time at the end for more detailed discussion and one-on-one consulting. (Attendees should have a basic knowledge of Linux as a prerequisite.) Module 4 - Thursday, 28 June, 10:30-12:30p. Profiling and Scaling Code on HPC: This course will provide an overview of profiling serial and parallel performance. Attendees will gain familiarity with those concepts necessary to characterize program performance for a computing allocation request. Topics to be covered include: Timing functions available in C++ and Fortran, commonly used profiling tools, the concepts of strong and weak scaling, and vectorization. (Attendees should have a basic knowledge of Linux as a prerequisite.) Module 5 - Friday, 29 June, 10:30-12:30p. Fundamentals of Compiling Programs and Linking Libraries in an HPC Environment: This class will provide an overview of compiling and linking in a Linux environment. Topics to be covered include: Makefiles, linking order, creating and linking to shared and static libraries, LD_LIBRARY_PATH and the HPC module system, and the RPATH variable. Examples will be provided in Fortran and C++. (Attendees should have a basic knowledge of Linux as a prerequisite.) A course abstract and description of modules can be found here: https://github.com/ResearchComputing/HPC_short_course_summer_2018 . Please register for each session you wish to attend. You are welcome to join us in person or remotely at https://cuboulder.zoom.us/j/4239862482 • Monday, June 25: https://colorado.libcal.com/event/4249366 • Tuesday, June 26: https://colorado.libcal.com/event/4273291 • Wednesday, June 27: https://colorado.libcal.com/event/4273344 • Thursday, June 28: https://colorado.libcal.com/event/4273463 • Friday, June 29: https://colorado.libcal.com/event/4273465

Administrative and Research Center (ARCE)

3100 Marine Street, Room 620 · Boulder, CO