June,2024 |
11 Jun 9:00 am 12:00 pmThis course provides an introduction to machine learning that enables computers to learn AI models from data without being explicitly programmed. It comprises two parts: Part I covers the fundamentals of machine learning, and, Part II demonstrates the applications of various machine methods in solving a real world problem. Rather than presenting the key concepts and components of machine learning in an abstract way, this course introduces them with a small number of examples. By using plotting and animations, insight into some of the mechanics of machine learning can be had. Furthermore, the student will gain practical skills in a case study, in which each step of developing a machine learning project is presented. By the end of this course, the student will have a solid understanding and experience with some of the fundamentals of machine learning enabling subsequent exploration. Level: Introductory to Intermediate Length: Two 3-Hour Sessions Format: Lecture + Hands-on Prerequisites: Alliance Account Data preparation or equivalent knowledge. Basic Python knowledge and experience. Knowledge and experience with Tensorflow and Scikit-learn would also be helpful. (part of the 2024 Compute Ontario Summer School) Virtual | COSS2024![Show in Google map](https://www.scinethpc.ca/wp-content/plugins/amr-ical-events-list/images/map_16.png) |
11 Jun 9:00 am 12:00 pmThis is an introduction to the intermediate level OpenMP hand-on course. OpenMP is a standard parallel programming API that supports multi-platform shared-memory multiprocessing programming in C, C++, and Fortran. This one-day course will cover the principles of OpenMP compiler directives, library routines, and environment variables with step-by-step hand-on examples. Case studies include various approaches for loop parallelism. We will also talk about the Task constructs for irregular programs, and the Target constructs for accelerators such as GPU. Participants will have hand-on programming experience with OpenMP as well as how to compile and run Multi-thread OpenMP code on different alliance clusters. Level: Introductory Length: Two 3-Hour Sessions Format: Lecture + Hands-on (Hands-on portion is CPU only.) Prerequisites: Basic knowledge of C, C++, or Fortran (part of the 2024 Compute Ontario Summer School) Virtual | COSS2024![Show in Google map](https://www.scinethpc.ca/wp-content/plugins/amr-ical-events-list/images/map_16.png) |
11 Jun 1:30 pm 4:30 pmThis course provides an introduction to machine learning that enables computers to learn AI models from data without being explicitly programmed. It comprises two parts: Part I covers the fundamentals of machine learning, and, Part II demonstrates the applications of various machine methods in solving a real world problem. Rather than presenting the key concepts and components of machine learning in an abstract way, this course introduces them with a small number of examples. By using plotting and animations, insight into some of the mechanics of machine learning can be had. Furthermore, the student will gain practical skills in a case study, in which each step of developing a machine learning project is presented. By the end of this course, the student will have a solid understanding and experience with some of the fundamentals of machine learning enabling subsequent exploration. Level: Introductory to Intermediate Length: Two 3-Hour Sessions Format: Lecture + Hands-on Prerequisites: Alliance Account Data preparation or equivalent knowledge. Basic Python knowledge and experience. Knowledge and experience with Tensorflow and Scikit-learn would also be helpful. (part of the 2024 Compute Ontario Summer School) Virtual | COSS2024![Show in Google map](https://www.scinethpc.ca/wp-content/plugins/amr-ical-events-list/images/map_16.png) |
11 Jun 1:30 pm 4:30 pmThis is an introduction to the intermediate level OpenMP hand-on course. OpenMP is a standard parallel programming API that supports multi-platform shared-memory multiprocessing programming in C, C++, and Fortran. This one-day course will cover the principles of OpenMP compiler directives, library routines, and environment variables with step-by-step hand-on examples. Case studies include various approaches for loop parallelism. We will also talk about the Task constructs for irregular programs, and the Target constructs for accelerators such as GPU. Participants will have hand-on programming experience with OpenMP as well as how to compile and run Multi-thread OpenMP code on different alliance clusters. Level: Introductory Length: Two 3-Hour Sessions Format: Lecture + Hands-on (Hands-on portion is CPU only.) Prerequisites: Basic knowledge of C, C++, or Fortran (part of the 2024 Compute Ontario Summer School) Virtual | COSS2024![Show in Google map](https://www.scinethpc.ca/wp-content/plugins/amr-ical-events-list/images/map_16.png) |
12 Jun 9:00 am 12:00 pmNOTE: 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 | COSS2024![Show in Google map](https://www.scinethpc.ca/wp-content/plugins/amr-ical-events-list/images/map_16.png) |
12 Jun 9:00 am 12:00 pmDuring this hands-on workshop, we will introduce parallel and distributed computing in MATLAB with a focus on speeding up application codes and offloading compute. By working through common scenarios and workflows using hands-on demos, you will gain a detailed understanding of the parallel constructs in MATLAB, their capabilities, and some of the common hurdles that you'll encounter when using them. Users will learn: Multithreading vs multiprocessing When to use parfor vs parfeval constructs Creating data queues for data transfer Leveraging NVIDIA GPUs Parallelizing Simulink models Working with large data Level: Intermediate Length: 3 Hours Format: Lecture + Hands-on Prerequisites: Working knowledge of MATLAB (part of the 2024 Compute Ontario Summer School) Virtual | COSS2024![Show in Google map](https://www.scinethpc.ca/wp-content/plugins/amr-ical-events-list/images/map_16.png) |
12 Jun 1:00 pm 2:30 pmIn about 90 minutes, learn how to use the SciNet systems Niagara and Mist, from securely logging in to running computations on the supercomputer. Experienced users may still pick up some valuable pointers.THIS EVENT HAS BEEN CANCELED. Virtual | HPC105 - Jun 2024![Show in Google map](https://www.scinethpc.ca/wp-content/plugins/amr-ical-events-list/images/map_16.png) |
12 Jun 1:30 pm 4:30 pmThis 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 | COSS2024![Show in Google map](https://www.scinethpc.ca/wp-content/plugins/amr-ical-events-list/images/map_16.png) |
12 Jun 1:30 pm 4:30 pmSome popular Python libraries for data analytics, like Numpy, Pandas, Scikit-Learn, etc., usually work well if the dataset fits into the RAM on a single machine. When dealing with large datasets, it could be a challenge to work around memory constraints. This course introduces scalable and accelerated data analytics with Dask and RAPIDS. Dask provides a framework and libraries that can handle large datasets on a single multi-core machine or across multiple machines on a cluster. RAPIDS, on the other hand, can accelerate your data analytics by offloading analytics workloads to GPUs with less effort in code changes. Level: Introductory Length: Two 3-Hour Sessions (2 Days) Format: Lecture + Hands-on Prerequisites: Alliance Account Basic Python and Linux command line experience. (part of the 2024 Compute Ontario Summer School) Virtual | COSS2024![Show in Google map](https://www.scinethpc.ca/wp-content/plugins/amr-ical-events-list/images/map_16.png) |
13 Jun 9:00 am 12:00 pmNOTE: 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 | COSS2024![Show in Google map](https://www.scinethpc.ca/wp-content/plugins/amr-ical-events-list/images/map_16.png) |
13 Jun 9:00 am 12:00 pmApptainer is a secure container technology designed to be used on for high performance compute clusters. This workshop will focus on how to use Apptainer as well as how to make use of tools such as Conda and Spack within Apptainer. By the end of these sessions, one: will have learnt about Apptainer and how it is installed and used on our computer clusters, how to build an Apptainer container image, how to install tools such as Conda/Spack from inside an Apptainer container shell, and, how to use Apptainer containers within job submission scripts. Level: Introductory Length: Two 3-Hour Sessions Format: Lecture + Hands-on Prerequisites: Experience using Alliance compute clusters, e.g., using the BASH shell and submitting jobs. (part of the 2024 Compute Ontario Summer School) Virtual | COSS2024![Show in Google map](https://www.scinethpc.ca/wp-content/plugins/amr-ical-events-list/images/map_16.png) |
13 Jun 1:30 pm 4:30 pmoneAPI is a unified application programming interface intended to be used across different compute accelerator architectures, including CPUs, GPUs and AI accelerators. It's aim is to unify the programming model as well as simplifying cross-architecture development. It also provides libraries for: deep neural network (DNN) learning applications, collective communications for machine learning and deep learning projects, and, data analytics making big data analysis faster using optimized algorithms. By the end of this workshop one will have: learned about oneAPI libraries and the inference toolkit, components, and capabilities for developing and deploying computer vision and deep learning solutions, explored techniques for optimizing pre-trained deep learning models and learn how to work with models from different frameworks like Tensorflow, PyTorch and Caffe, understood how to perform inference on different hardware such as CPU and GPU, and, considered practical computer vision applications and use cases. Level: Intermediate Length: 3 Hours Format: Lecture + Hands-on Prerequisites: Attendees having hands-on experience with Python and some experience with Tensorflow or PyTorch will get the most out of this workshop. (part of the 2024 Compute Ontario Summer School) Virtual | COSS2024![Show in Google map](https://www.scinethpc.ca/wp-content/plugins/amr-ical-events-list/images/map_16.png) |
13 Jun 1:30 pm 4:30 pmApptainer is a secure container technology designed to be used on for high performance compute clusters. This workshop will focus on how to use Apptainer as well as how to make use of tools such as Conda and Spack within Apptainer. By the end of these sessions, one: will have learnt about Apptainer and how it is installed and used on our computer clusters, how to build an Apptainer container image, how to install tools such as Conda/Spack from inside an Apptainer container shell, and, how to use Apptainer containers within job submission scripts. Level: Introductory Length: Two 3-Hour Sessions Format: Lecture + Hands-on Prerequisites: Experience using Alliance compute clusters, e.g., using the BASH shell and submitting jobs. (part of the 2024 Compute Ontario Summer School) Virtual | COSS2024![Show in Google map](https://www.scinethpc.ca/wp-content/plugins/amr-ical-events-list/images/map_16.png) |
14 Jun 9:00 am 12:00 pmNOTE: 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 | COSS2024![Show in Google map](https://www.scinethpc.ca/wp-content/plugins/amr-ical-events-list/images/map_16.png) |
14 Jun 9:00 am 12:00 pmMachine 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 | COSS2024![Show in Google map](https://www.scinethpc.ca/wp-content/plugins/amr-ical-events-list/images/map_16.png) |
14 Jun 1:30 pm 4:30 pmNOTE: 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 | COSS2024![Show in Google map](https://www.scinethpc.ca/wp-content/plugins/amr-ical-events-list/images/map_16.png) |
14 Jun 1:30 pm 4:30 pmThis 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 | COSS2024![Show in Google map](https://www.scinethpc.ca/wp-content/plugins/amr-ical-events-list/images/map_16.png) |
17 Jun 9:00 am 12:00 pmThis 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 | COSS2024![Show in Google map](https://www.scinethpc.ca/wp-content/plugins/amr-ical-events-list/images/map_16.png) |
17 Jun 9:00 am 12:00 pmLearn 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 | COSS2024![Show in Google map](https://www.scinethpc.ca/wp-content/plugins/amr-ical-events-list/images/map_16.png) |
17 Jun 1:30 pm 4:30 pmThis 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 | COSS2024![Show in Google map](https://www.scinethpc.ca/wp-content/plugins/amr-ical-events-list/images/map_16.png) |
17 Jun 1:30 pm 4:30 pmLearn 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 | COSS2024![Show in Google map](https://www.scinethpc.ca/wp-content/plugins/amr-ical-events-list/images/map_16.png) |
18 Jun 9:00 am 12:00 pmThis 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 | COSS2024![Show in Google map](https://www.scinethpc.ca/wp-content/plugins/amr-ical-events-list/images/map_16.png) |
18 Jun 9:00 am 12:00 pmModern 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 | COSS2024![Show in Google map](https://www.scinethpc.ca/wp-content/plugins/amr-ical-events-list/images/map_16.png) |
18 Jun 1:30 pm 4:30 pmModern 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 | COSS2024![Show in Google map](https://www.scinethpc.ca/wp-content/plugins/amr-ical-events-list/images/map_16.png) |
18 Jun 1:30 pm 4:30 pmThis 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 | COSS2024![Show in Google map](https://www.scinethpc.ca/wp-content/plugins/amr-ical-events-list/images/map_16.png) |
19 Jun 9:00 am 12:00 pmThis 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 | COSS2024![Show in Google map](https://www.scinethpc.ca/wp-content/plugins/amr-ical-events-list/images/map_16.png) |
19 Jun 9:00 am 12:00 pmDuring this workshop, we will learn about matplotlib which is a popular Python library that is great for 2D visualizations, and ParaView, a free and open-source visualization tool for creating 3D visualizations of your datasets. In this interactive workshop you will get familiar with how ParaView works and at the end you should be able to generate basic visualizations of the demo data. Level: Introductory Length: Two 3-Hour Sessions Format: Lecture + Hands-on Prerequisites: None (part of the 2024 Compute Ontario Summer School) Virtual | COSS2024![Show in Google map](https://www.scinethpc.ca/wp-content/plugins/amr-ical-events-list/images/map_16.png) |
19 Jun 1:30 pm 4:30 pmThis 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 | COSS2024![Show in Google map](https://www.scinethpc.ca/wp-content/plugins/amr-ical-events-list/images/map_16.png) |
19 Jun 1:30 pm 4:30 pmDuring this workshop, we will learn about matplotlib which is a popular Python library that is great for 2D visualizations, and ParaView, a free and open-source visualization tool for creating 3D visualizations of your datasets. In this interactive workshop you will get familiar with how ParaView works and at the end you should be able to generate basic visualizations of the demo data. Level: Introductory Length: Two 3-Hour Sessions Format: Lecture + Hands-on Prerequisites: None (part of the 2024 Compute Ontario Summer School) Virtual | COSS2024![Show in Google map](https://www.scinethpc.ca/wp-content/plugins/amr-ical-events-list/images/map_16.png) |
20 Jun 9:00 am 12:00 pmModern 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 | COSS2024![Show in Google map](https://www.scinethpc.ca/wp-content/plugins/amr-ical-events-list/images/map_16.png) |
20 Jun 9:00 am 12:00 pmIn our digitally-driven world, databases are the cornerstone of virtually every online service and application. They help store your favourite songs on music platforms, track orders on shopping sites, and keep your personal information safe and sound. These incredible systems are the backbone of our digital universe, silently and efficiently managing the vast oceans of data that flow through our daily lives. From the social media sites we share with our friends to the online transactions that make our lives easier, databases are the unsung heroes, diligently organizing, storing, and retrieving information with remarkable precision. Whether you're a technical professional or just beginning to explore data management, the journey into the realm of databases is both enlightening and rewarding, offering endless opportunities for discovery and innovation. Together, we will explore the secrets that make our connected world tick. Level: Introductory Length: Four 3-Hour Sessions (2 Days) Format: Lecture+Hands-on Prerequisites: Basic programming knowledge Installation of MySQL on one's personal computer (part of the 2024 Compute Ontario Summer School) Virtual | COSS2024![Show in Google map](https://www.scinethpc.ca/wp-content/plugins/amr-ical-events-list/images/map_16.png) |
20 Jun 1:30 pm 4:30 pmModern 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 | COSS2024![Show in Google map](https://www.scinethpc.ca/wp-content/plugins/amr-ical-events-list/images/map_16.png) |
20 Jun 1:30 pm 4:30 pmIn our digitally-driven world, databases are the cornerstone of virtually every online service and application. They help store your favourite songs on music platforms, track orders on shopping sites, and keep your personal information safe and sound. These incredible systems are the backbone of our digital universe, silently and efficiently managing the vast oceans of data that flow through our daily lives. From the social media sites we share with our friends to the online transactions that make our lives easier, databases are the unsung heroes, diligently organizing, storing, and retrieving information with remarkable precision. Whether you're a technical professional or just beginning to explore data management, the journey into the realm of databases is both enlightening and rewarding, offering endless opportunities for discovery and innovation. Together, we will explore the secrets that make our connected world tick. Level: Introductory Length: Four 3-Hour Sessions (2 Days) Format: Lecture+Hands-on Prerequisites: Basic programming knowledge Installation of MySQL on one's personal computer (part of the 2024 Compute Ontario Summer School) Virtual | COSS2024![Show in Google map](https://www.scinethpc.ca/wp-content/plugins/amr-ical-events-list/images/map_16.png) |