Nowadays, researchers working in fields ranging from astrophysics to molecular dynamics, genetics, and bio-informatics, need to use Linux to be able to handle their computational needs.
Linux is one of the most advanced, powerful and extremely efficient operating systems. Working with HPC systems involves using the Linux command line. Learn the basics of how to use the Linux terminal in a couple of hours. Very useful for users with no experience in the Linux command line. No previous experience is required. Learn to navigate the file system of a computer and manipulate files and commands using one of the most powerful operating systems by using simple but extremely powerful commands in a Linux terminal.
Learn the basics of how to use the unix shell in a few hours. Includes a mild introduction to bash scripting as well.
This workshop will be delivered online in two sessions:
- June 12 from 9:00 A.M. to 12:00 P.M. (Eastern Daylight Time)
- June 12 from 1:30 P.M. to 4:30 P.M. (Eastern Daylight Time)
- Teacher: Marco Saldarriaga
This workshop is an entry-level primer for those largely new to supercomputing, i.e., to computing on shared, remote resources. It is intended to demystify the somewhat intimidating term "High-Performance Computing" (HPC), and to serve as a foundation upon which to build over the coming days. Topics will include motivation for HPC, available resources, essential issues, and a high level overview of parallel programming models commonly used on these systems.
Prerequisite: Basic Linux knowledge such as gained from 2023 COSS Introduction to Linux Shell .
This workshop will be delivered online in one session:
- June 13 from 9:00 A.M. to 12:00 P.M. (Eastern Daylight Time)
- Teacher: Ramses van Zon
Using version control for your scripts, codes, documents, papers, and
even data, allows you to track changes, keep backups, and facilitate
collaboration. In this workshop, you will learn the basics of version
control with the popular distributed version control software GIT. This
workshop assumes that students have an understanding of basic Linux
shell commands.
This workshop will be delivered online in one session:
- June 13 from 1:30 P.M. to 4:30 P.M. (Eastern Daylight Time)
- Teacher: James Willis
Python is one of the most popular programming languages. The broad range
of packages available and strong community make it a versatile language
that can be used for almost anything. On top of that, it's a
beginner-friendly language that anyone can learn. This workshop covers
all the basics of Python and programming in general. By the end of the
session, you'll be able to use Python to load, manipulate, and visualize
data.
This workshop will be delivered online in two sessions:
- June 14 from 9:00 A.M. to 12:00 P.M. (Eastern Daylight Time)
- June 14 from 1:30 P.M. to 4:30 P.M. (Eastern Daylight Time)
- Teacher: Fernando Jose Hernandez Leiva
This course will provide hands-on experience on fundamental concepts of programming using C. This will include Conditional statement, Loops(while and for), Arrays, Pointers, Functions and Dynamic memory allocation.
An introduction will be provided regarding fundamental data structures such as linked list, stacks, queues and binary trees. Understanding of these fundamental programming concepts will aid in learning other High-level and Object oriented programming languages such as C++ etc.
No prerequisites are required. Some experience in other programming languages is good to have, but not required.
This workshop will be delivered online in two sessions:
- June 15 from 9:00 A.M. to 12:00 P.M. (Eastern Daylight Time)
- June 15 from 1:30 P.M. to 4:30 P.M. (Eastern Daylight Time)
- Teacher: Rakesh Srirajaraghavaraju
This workshop will be delivered online in two sessions:
- June 16 from 9:00 A.M. to 12:00 P.M. (Eastern Daylight Time)
- June 16 from 1:30 P.M. to 4:30 P.M. (Eastern Daylight Time)
- Teacher: Sergey Mashchenko