|

Tuesday, 17 June 2025

|

GPU Programming: CUDA (Session 1 of 6)

Site event
DESCRIPTION: This is an introductory course covering programming and computing on GPUs - graphics processing units - which are an increasingly common presence in massively parallel computing architectures. The basics of GPU programming will be covered, and students will work through a number of hands on examples. The structuring of data and computations that makes full use of the GPU will be discussed in detail. Students should be able to leave the course with the knowledge necessary to begin developing their own GPU applications.

This course will have completion activities (quizzes and/or home assignments). Upon successful completion of the activities, a Certificate of course Completion will be issued.

IMPORTANT: this course will use an Alliance cluster for hands-on activities, and so IT IS RESTRICTED TO ALLIANCE USERS ONLY. If you are a Canadian researcher or grad student, you can get an Alliance account for free, typically within a few days.

TEACHER: Sergey Mashchenko (SHARCNET, McMaster University) and Pawel Pomorski (SHARCNET, University of Waterloo)

LEVEL: Introductory

FORMAT: Lecture + Hands-on

CERTIFICATES: Completion

PREREQUISITES:

* Alliance account
* Basic C and/or C++ programming experience.

Event source: COSS 2025

Introduction to Julia for Scientific and Parallel Computing (Session 1 of 4)

Site event
DESCRIPTION: Julia is becoming increasingly popular for scientific computing. One may use it for prototyping as Matlab, R and Python for productivity, while gaining the same performance as compiled languages such as C/C++ and Fortran. The language is designed for both prototyping and performance, as well as simplicity. This is an introductory course on julia. Students will be able to get started quickly with the basics, in comparison with other similar languages such as Matlab, R, Python and Fortran and move on to learn how to write code that can run in parallel on multi-core and cluster systems through examples.

TEACHER: Baolai Ge (SHARCNET, Western University)

LEVEL: Introductory

FORMAT: Lecture + Hands-on

CERTIFICATE: Attendance and Completion

PREREQUISITES: None

Event source: COSS 2025

Moving to Rust for Memory Safe Code

Site event
DESCRIPTION: An introduction to Rust, highlighting some of the major differences to traditional languages like C/C++. We will also have a brief review of available science modules.

TEACHER: Joey Bernard (ACENET, University of New Brunswick)

LEVEL: Introductory

FORMAT: Lecture + Hands-on

CERTIFICATE: Attendance

PREREQUISITES:

* Knowledge of how compiled code works.
* Some knowledge of C-like programming languages.

Event source: COSS 2025

GPU Programming: CUDA (Session 2 of 6)

Site event
DESCRIPTION: This is an introductory course covering programming and computing on GPUs - graphics processing units - which are an increasingly common presence in massively parallel computing architectures. The basics of GPU programming will be covered, and students will work through a number of hands on examples. The structuring of data and computations that makes full use of the GPU will be discussed in detail. Students should be able to leave the course with the knowledge necessary to begin developing their own GPU applications.

This course will have completion activities (quizzes and/or home assignments). Upon successful completion of the activities, a Certificate of course Completion will be issued.

IMPORTANT: this course will use an Alliance cluster for hands-on activities, and so IT IS RESTRICTED TO ALLIANCE USERS ONLY. If you are a Canadian researcher or grad student, you can get an Alliance account for free, typically within a few days.

TEACHER: Sergey Mashchenko (SHARCNET, McMaster University) and Pawel Pomorski (SHARCNET, University of Waterloo)

LEVEL: Introductory

FORMAT: Lecture + Hands-on

CERTIFICATES: Completion

PREREQUISITES:

* Alliance account
* Basic C and/or C++ programming experience.

Event source: COSS 2025

Introduction to Julia for Scientific and Parallel Computing (Session 2 of 4)

Site event
DESCRIPTION: Julia is becoming increasingly popular for scientific computing. One may use it for prototyping as Matlab, R and Python for productivity, while gaining the same performance as compiled languages such as C/C++ and Fortran. The language is designed for both prototyping and performance, as well as simplicity. This is an introductory course on julia. Students will be able to get started quickly with the basics, in comparison with other similar languages such as Matlab, R, Python and Fortran and move on to learn how to write code that can run in parallel on multi-core and cluster systems through examples.

TEACHER: Baolai Ge (SHARCNET, Western University)

LEVEL: Introductory

FORMAT: Lecture + Hands-on

CERTIFICATE: Attendance and Completion

PREREQUISITES: None

Event source: COSS 2025

Data Security

Site event
DESCRIPTION: Be aware. Stay secure. Join us to learn more about the tools you can use to prevent the theft of your data and possibly of your identity. Other topics of discussion will include common hacking attempts, how to recognize them, and how to avoid having your data compromised, stolen, or destroyed. We will also talk about data encryption and provide tips for when travelling with electronic devices.

TEACHER: Jarno van der Kolk (University of Ottawa)

LEVEL: Introductory

FORMAT: Lecture

CERTIFICATE: Attendance

PREREQUISITES: None

Event source: COSS 2025