Events

Refresh calendars Add to google calendar
June,2024
14 Jun 9:00 am 12:00 pm

CO Summer School S1: Machine Learning with MATLAB

Machine learning is a data analytics technique that teaches computers to do what comes naturally to humans and animals: learn from experience. Machine learning algorithms use computational methods to “learn” information directly from data without relying on a predetermined equation as a model. In this hands-on introductory workshop, you will learn how to apply Machine Learning, and get familiar with the basics of Deep Learning. MATLAB provides an environment to apply advanced techniques without requiring extensive coding nor experience in machine learning. Learn the fundamentals of machine learning (supervised learning, feature extraction, and hyperparameter tuning) Explore pre-processing and powerful visualization techniques Build and evaluate machine learning models for classification and regression of various data formats (signals, images, text) Perform hyperparameter tuning and feature selection to optimize model performance Discuss interoperability with other platforms Learn how to deploy Machine Learning models Level: Intermediate Length: 3 Hours Format: Lecture + Hands-on Prerequisites: Working knowledge of MATLABMachine learning is a data analytics technique that teaches computers to do what comes naturally to humans and animals: learn from experience. Machine learning algorithms use computational methods to “learn” information directly from data without relying on a predetermined equation as a model. In this hands-on introductory workshop, you will learn how to apply Machine Learning, and get familiar with the basics of Deep Learning. MATLAB provides an environment to apply advanced techniques without requiring extensive coding nor experience in machine learning. Learn the fundamentals of machine learning (supervised learning, feature extraction, and hyperparameter tuning) Explore pre-processing and powerful visualization techniques Build and evaluate machine learning models for classification and regression of various data formats (signals, images, text) Perform hyperparameter tuning and feature selection to optimize model performance Discuss interoperability with other platforms Learn how to deploy Machine Learning models Level: Intermediate Length: 3 Hours Format: Lecture + Hands-on Prerequisites: Working knowledge of MATLAB (part of the 2024 Compute Ontario Summer School) Virtual
COSS2024Show in Google map
14 Jun 9:00 am 12:00 pm

CO Summer School S2: Artificial Neural Networks aka Deep Learning (session 3/4)

NOTE: This course is divided into four (4) parts over three (3) days. Part I and Part II Description: Introduction of neural network programming concepts, theory, and techniques. The class material will begin at an introductory level, intended for those with no experience with neural networks, eventually covering intermediate concepts. (The Keras neural network framework will be used for neural network programming but no experience with Keras will be expected.) Part III Description: This part will continue the development of neural network programming approaches from Parts I and II. This part will focus on generative methods used to create images: variational auto-encoders, generative adversarial networks, and diffusion networks. Part IV Description: This part will continue the development of neural network programming approaches from Parts I through III. This part will focus on methods used to generate sequences: LSTM networks, sequence-to-sequence networks, and transformers. Level: Intermediate Length: Four 3-Hour Sessions (3 Days) Format: Lecture + Hands-on Prerequisites: Experience with Python (version 3.10) is assumed. Each part assumes what was covered in the previous parts of this course. Parts III and IV assume experience with neural network programming, per the first two neural network programming sessions in this course. (part of the 2024 Compute Ontario Summer School) Virtual
COSS2024Show in Google map
14 Jun 1:30 pm 4:30 pm

CO Summer School S1: Leveraging HPC for Computational Fluid Dynamics (session 3/3)

This course is intended to help learners with a basic understanding of fluid dynamics and CFD bridge the knowledge gap towards the effective utilization of CFD on modern HPC architectures. This course will take an end-user approach to CFD tools on HPC systems (no coding) and, despite some prerequisites, will be given at an introductory/intermediate level (we will not cover advanced topics such as GPU or dynamic load-balancing). At the end of the course, the learner will be able to: Develop a systematic approach to estimate the HPC cost of a CFD problem. Explain the impact of modelling assumptions on HPC cost. Optimize the parameters and simulations for effective HPC usage. The course will use an entirely open source suite of CFD toolsets to mesh (Gmsh), simulate (OpenFoam/SU2), and visualize (Visit/Paraview). It should be noted that this is not a CFD course; therefore, undergraduate-level knowledge of CFD and numerical methods is expected, as well as a basic understanding of the Compute Ontario HPC system. The focus is on the effective use of CFD tools in modern HPC systems. Level: Intermediate, Length: Three 1-Hour Sessions (3 Days), Format: Lecture + Hands-on, Prerequisites: Undergraduate-level knowledge of fluid dynamics (ideally with some knowledge of turbulence), CFD, and numerical methods. (part of the 2024 Compute Ontario Summer School) Virtual
COSS2024Show in Google map
14 Jun 1:30 pm 4:30 pm

CO Summer School S2: Artificial Neural Networks aka Deep Learning (session 4/4)

NOTE: This course is divided into four (4) parts over three (3) days. Part I and Part II Description: Introduction of neural network programming concepts, theory, and techniques. The class material will begin at an introductory level, intended for those with no experience with neural networks, eventually covering intermediate concepts. (The Keras neural network framework will be used for neural network programming but no experience with Keras will be expected.) Part III Description: This part will continue the development of neural network programming approaches from Parts I and II. This part will focus on generative methods used to create images: variational auto-encoders, generative adversarial networks, and diffusion networks. Part IV Description: This part will continue the development of neural network programming approaches from Parts I through III. This part will focus on methods used to generate sequences: LSTM networks, sequence-to-sequence networks, and transformers. Level: Intermediate Length: Four 3-Hour Sessions (3 Days) Format: Lecture + Hands-on Prerequisites: Experience with Python (version 3.10) is assumed. Each part assumes what was covered in the previous parts of this course. Parts III and IV assume experience with neural network programming, per the first two neural network programming sessions in this course. (part of the 2024 Compute Ontario Summer School) Virtual
COSS2024Show in Google map
17 Jun 9:00 am 12:00 pm

CO Summer School S2: High Performance Computing in Python (morning session)

Learn how to improve the performance and use parallel programming in Python. We will cover profiling, subprocess, numexpr, multiprocessing, MPI, and other performance enhancing techniques. Level: Intermediate Length: Two 3-Hour Sessions Format: Lecture + Hands-on Prerequisite: Some Python and Linux command line experience. (part of the 2024 Compute Ontario Summer School) Virtual
COSS2024Show in Google map
17 Jun 9:00 am 12:00 pm

CO Summer School S1: GPU programming: CUDA (day 1, morning session)

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. Level: Introductory Length: Six 3-Hour Sessions (3 Days) Format: Lecture + Hands-on Prerequisites: Alliance Account Basic C and/or C++ experience (part of the 2024 Compute Ontario Summer School) Virtual
COSS2024Show in Google map
17 Jun 1:30 pm 4:30 pm

CO Summer School S1: GPU programming: CUDA (day 1, afternoon session)

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. Level: Introductory Length: Six 3-Hour Sessions (3 Days) Format: Lecture + Hands-on Prerequisites: Alliance Account Basic C and/or C++ experience (part of the 2024 Compute Ontario Summer School) Virtual
COSS2024Show in Google map
17 Jun 1:30 pm 4:30 pm

CO Summer School S2: High Performance Computing in Python (afternoon session)

Learn how to improve the performance and use parallel programming in Python. We will cover profiling, subprocess, numexpr, multiprocessing, MPI, and other performance enhancing techniques. Level: Intermediate Length: Two 3-Hour Sessions Format: Lecture + Hands-on Prerequisite: Some Python and Linux command line experience. (part of the 2024 Compute Ontario Summer School) Virtual
COSS2024Show in Google map
18 Jun 9:00 am 12:00 pm

CO Summer School S1: GPU programming: CUDA (day 2, morning session)

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. Level: Introductory Length: Six 3-Hour Sessions (3 Days) Format: Lecture + Hands-on Prerequisites: Alliance Account Basic C and/or C++ experience (part of the 2024 Compute Ontario Summer School) Virtual
COSS2024Show in Google map
18 Jun 9:00 am 12:00 pm

CO Summer School S2: Modern C++ Parallel Programming (day 1, morning session)

Modern C++ is an efficient, versatile programming language. This workshop will focus on the following in both sequential and parallel contexts: using pseudo-random number generators, making use of reduction options using underlying sequential code, making simple use of in-situ code benchmarking/profiling, and, using mdspan for accessing multi-dimensional arrays and multi-dimensional array slices (submdspan). By the end of these sessions, one will have learnt about sequential and parallel uses of: C++ pseudo-random number generators and their use, C++ std::reduce(), std::transform_reduce(), etc. and C++ parallel algorithms and some of their uses and caveats, using std::chrono facilities, e.g., for in-situ benchmarks, and, how to use multi-dimensional arrays and slices in C++ code. Level: Intermediate Length: Four 3-Hour Sessions (2 Days) Format: Lecture + Hands-on Prerequisites: Experience developing sequential code in C++. (The C++ programming language is not the C programming language. Experience is expected programming in C++, e.g., using the standard library's containers, iterators, and algorithms.) (part of the 2024 Compute Ontario Summer School) Virtual
COSS2024Show in Google map
18 Jun 1:30 pm 4:30 pm

CO Summer School S2: Modern C++ Parallel Programming (day 1, afternoon session)

Modern C++ is an efficient, versatile programming language. This workshop will focus on the following in both sequential and parallel contexts: using pseudo-random number generators, making use of reduction options using underlying sequential code, making simple use of in-situ code benchmarking/profiling, and, using mdspan for accessing multi-dimensional arrays and multi-dimensional array slices (submdspan). By the end of these sessions, one will have learnt about sequential and parallel uses of: C++ pseudo-random number generators and their use, C++ std::reduce(), std::transform_reduce(), etc. and C++ parallel algorithms and some of their uses and caveats, using std::chrono facilities, e.g., for in-situ benchmarks, and, how to use multi-dimensional arrays and slices in C++ code. Level: Intermediate Length: Four 3-Hour Sessions (2 Days) Format: Lecture + Hands-on Prerequisites: Experience developing sequential code in C++. (The C++ programming language is not the C programming language. Experience is expected programming in C++, e.g., using the standard library's containers, iterators, and algorithms.) (part of the 2024 Compute Ontario Summer School) Virtual
COSS2024Show in Google map
18 Jun 1:30 pm 4:30 pm

CO Summer School S1: GPU programming: CUDA (day 2, afternoon session)

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. Level: Introductory Length: Six 3-Hour Sessions (3 Days) Format: Lecture + Hands-on Prerequisites: Alliance Account Basic C and/or C++ experience (part of the 2024 Compute Ontario Summer School) Virtual
COSS2024Show in Google map