Calendar
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.
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
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.
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.
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
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
TEACHER: Jarno van der Kolk (University of Ottawa)
LEVEL: Introductory
FORMAT: Lecture
CERTIFICATE: Attendance
PREREQUISITES: None
Event source: COSS 2025