Education, Training, and Outreach

SciNet is the high performance computing (HPC) centre at the University of Toronto, established in 2009 as a consortium of the University of Toronto and its affiliated research hospitals. Its mission is to provide computational resources, specialized support and training to any Canadian academic researcher.

The full power of high performance computing systems can best be exploited by people with specialized knowledge. The education and training of such people is absolutely critical, especially since the methodology in many disciplines has evolved to include a large computational component. SciNet has developed an education and training program for the wider scientific community aimed at helping students and users obtain the skills and knowledge required to get the most out of advanced research computing resources.

SciNet’s education and training program

SciNet’s education program started with the traditional “Intro to SciNet” sessions and yearly intensive parallel programming workshops. As our user base has grown to encompass fields relatively new to HPC, such as medical science, biology, forestry, and economics, the program has grown to include topics in data science such as introductory scientific computing in Python, R, machine learning, and work-flow design, while still including advanced research computing and high performance computing.

The skills that SciNet aims to transfer are rare and sought-after, and complement and enhance the skills students learn in regular curricula. Users and students can get a certificate in Scientific Computing, Data Science, or High Performance Computing once they have completed enough SciNet credit-hours. As a document that proves the holder has highly competitive skills, the certificates are in high demand. From the start of the program in 2013 until November 2017, nearly 100 SciNet certificates have been issued.

The growth of SciNet’s education program is illustrated by the following chart which counts the total number of attendance (number of attendees times duration in hours) of all education and training events given by SciNet.

This graph also highlights the growth in popularity of our data science courses, which includes machine learning.

SciNet courses tie into university graduate programs

By partnering with other departments in the University, an increasing number of our training courses have been taken for credit toward graduate degrees at the University of Toronto. Our current partners include the Departments of Physics, Astrophysics, Chemistry, and Ecology and Evolutionary Biology, as well as the Institute for Medical Sciences. Indicative of the success of our “partnered” courses, the full term physics graduate course “Scientific Computing for Physicists” (given every year) had an enrollment of nearly 50 in the Winter of 2016, and attracted students from many different departments such as physics, astrophysics, engineering and math. The modular course Data Analysis with R, given in partnership with IMS and EEB, which started in the Fall of 2016, has over 100 registered students, and has since grown into a full term IMS course, “Introduction to Clinical BioStatistics”, given twice a year. Since 2017, we are also guest lecturing in the 4th year Physics undergraduate Research Project course, and are delivering a graduate course “Quantitative Applications for Data Analysis” in partnership with the Biological Sciences group at University of Toronto Scarborough.

The diversity of academic backgrounds of the students taking our courses can be seem in the following charts, broken down by faculty within the University of Toronto.

faculty_studenthours_distribution_scinet_teaching

 

SciNet courses in the 2017-2018 academic year

For-Credit Courses

  • Introduction to Computational BioStatistics MSC1090 (120) 2x
  • Scientific Computing for Physicists PHY1610H (30)
  • Quantitative Applications for Data Analysis EES1137 (25)
  • Undergrad Seminars on Research Computing for PHY479Y (6)
  • Advanced Parallel Scientific Computing mini-course PHY2109/AST3100 (6)
  • Scientific Programming with Python PHY2109/AST3100 (20)
  • Introduction to Programming EEB (24)

Workshops (full day or longer)

  • Storage and I/O in Large Scale Scientific Projects (20)
  • Introduction to Neural Network Programming (20)
  • Relational Database Basics (15)
  • Programming Clusters with MPI (25)
  • Programming GPUs with CUDA (30)
  • Programming Shared Memory with OpenMP (36)
  • Debugging (20)

Shorter Training Sessions

  • Intro to SciNet (80) 8x
  • Intro to the Linux Shell (30) 3x
  • Advanced Shell Programming (17)
  • Advanced Neural Networks (20)
  • Intro to SciNet and HPC (90)
  • Parallel R (60)
  • Python for High Performance Computing (65)
  • Scientific Visualization (44)
  • Biomedical Sessions (20)

The numbers in parentheses reflect known attendance or typical enrollment.

Note that for-credit courses are typically also open to SciNet users that are not graduate students at UofT.

SciNet’s education site contains up-to-date information on courses, as well as course materials and recordings.

Collaborations in HPC education

Together with our partner consortia, SHARCNET and CAC, SciNet is involved in the annual Ontario Summer Schools in High Performance Computing. These schools provide attendees with opportunities to learn and share knowledge and experience in high performance and technical computing. Each of the three consortia organizes one week of summer school. In 2017, the number of unique attendees to the Toronto-based summer school was over 160. In addition, SciNet is involved in the tutorials in the annual Canadian HPC symposium, HPCS.
SciNet was also the local organizer of the 2015 International HPC summer school, held at the University of Toronto. This ‘school’ is a graduate-level summer institute organized as a collaboration between Compute Canada (of which SciNet is a partner) and its US, European and Japanese counterparts. The demand from Canadian students was seven times larger than the number of available spots; further evidence for the demand for HPC education.

Assembling the "Goliath" Cluster

Some of the high school students here are cabling up what will be the “Goliath” cluster, a cluster of 3 old Pentium-4 desktops with 100Mb ethernet.

Community Outreach

SciNet’s education program extends beyond the university. Our outreach efforts include:

  1. Data centre tours.
  2. Bringing HPC experience to high schools (building mini-clusters, parallel programming,  …).
  3. The Teach the Teachers project, currently involving 12 teachers from 6 schools.
  4. The Big Data Challenge for High School Students (co-organizer and jury members).
  5. Participation in Science Rendezvous, an annual festival that takes science onto the  street.

Check our YouTube video presentation!