- Teacher: Fernando Hernandez Leiva
This workshop is intended to give a good introduction and overview of the high-performance computing (HPC) tools available at the CAC and how to use them effectively. By the end of this workshop, participants will know how to use the UNIX command line to operate a computer, connect to a cluster, write simple shell scripts, submit and manage jobs on a cluster using a scheduler, transfer files, and use software through environment modules.
- Teacher: Shadi Khalifa
This is an introductory workshop to Data Analytics. It starts by introducing the Data Analytics pipeline and its processes. Then, it discusses the different statistical and visualization approaches for conducting Exploratory and Descriptive Analytics on data to answer the question of “What happened in the past?”. The workshop then dives into the art of Data Preparation covering data cleaning, missing values handling, outlier detection and handling, feature transformation and feature engineering.
- Teacher: Shadi Khalifa
Version control is an important tool for tracking and safe-keeping articles and source code. Nothing is ever lost, and it is always possible to go back in time to an earlier version. It is an ideal tool for collaboration since multiple persons can work on the same project and it keeps a record of which change has been done by which person.
In this course, we will look at the most popular version control software, Git, which is the basis for well-known sites such as GitHub and Gitlab.
- Teacher: Jarno van der Kolk
Keeping your data secure is an important aspect of research. Some researchers will handle confidential information and there has been an increase in hacking attempts by foreign entities to extract valuable intellectual property. In this course, we will look at the various levels of encryption as well as password management and general data hygiene. We will also discuss common techniques used to infiltrate your systems.
- Teacher: Jarno van der Kolk
This workshop introduces Predictive Analytics to answer the question of “What will happen?”. It discusses when and how to use the different predictive Machine Learning algorithms. The workshop covers algorithms in Supervised Learning (Classification and Regression) such as KNN, Decision Trees, Random Forest, Naïve Bayes, Support Vector Machines, Neural Networks, Logistic and Linear Regression. The workshop also introduces a set of statistical evaluation methods to compare the performance of different algorithms.
- Teacher: Amal Khalil
It is hard to extract conclusions from raw data, which is why we always turn the data into something we can interpret visually. This can range from 2D graphs to complex 3D animations. This introduction will cover various 2D visualization tools such as GnuPlot and Plot.ly, but also 3D tools such as ParaView for visualizing complex data sets.
- Teacher: Jarno van der Kolk
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. The course covers some new features available on GPUs installed on Graham and Cedar. Students should be able to leave the course with the knowledge necessary to begin developing their own GPU applications.
Pre-requisites:
1. Participants must have a Compute Canada account.
2. C/C++ scientific programming
3. Experience editing and compiling code in a Linux environment
4. Some experience with CUDA and/or OpenMP a plusEach day consists of two sessions
Morning session (10:00am - 1:00pm).
Afternoon session (2:00pm - 5:00pm).
All times are EDT (Eastern time).
Lunch break is between 1:00pm - 2:00pm.
We will also include some shorter, intermittent, breaks.
Instructors:
Dr. Sergey Mashchenko, McMaster University
Dr. Pawel Pomorski, University of Waterloo
Instruction time:
18 hours (over 3 days)
- Teacher: Sergey Mashchenko
- Teacher: Pawel Pomorski