Home | Programme | Registration | Venue | Accommodation | Travel | Gallery | Toronto | Sheridan | Contact Us

The University of Western Ontario
London, ON

Wilfrid Laurier University
Waterloo, ON

York University
Toronto, ON

University of Waterloo
Waterloo, ON

McMaster University
Hamilton, ON

York University
Toronto, ON

Sheridan Institute
Oakville, ON

Sheridan Institute
Oakville, ON

What's New

Attendees' comments
See what other people think and add your comments here
June 2, 2010

Course materials online now
Course materials are now being posted online. Attendees may check individual courses for updates.
June 2, 2011

Registration closed
The online registration is now closed. On Monday morning, May 30, attendees will report to the reception desk in the SCAET atrium (the main entrance) starting at 8:00 am.
May 27, 2011

Students receiving subsidized accommodation contacted
Students who registered recently and requested for the subsidized accommodations have been contacted individually. For those who requested for accommodation after May 24, and haven't received confirmation please contact us at your earliest convenience.
May 25, 2011

Extra subsidized accommodation available
A few spaces have become available for students travelling from distant institutions. They will be taken on a first come first serve basis.
May 24, 2011

Online registration is open
Limited subsidy for accommodation is available for students travelling from distant institutions.
May 13, 2011

Course outline now available
May 10, 2011

The web site is up
April 29, 2011

Poster (PDF)

Parallel Programming Using the Pilot Library


Pilot is a new way to program high-performance clusters in C or Fortran based on a high-level model featuring processes executing on cluster nodes, and channels for passing messages among them. Designed to smooth the learning curve for novice scientific programmers, the set of library functions is small—-less than one-tenth that of MPI-—and easy to learn, since the syntax of the C API mirrors well-known printf and scanf. The process/channel abstraction inherently reduces the opportunities for communication errors that result in deadlock, and a runtime mechanism detects and diagnoses deadlocks arising from circular waiting. The Pilot library is built as a transparent layer on top of conventional MPI, and shields users from the latter’s complexity while adding minimal overhead.

Instructor: William Gardner, School of Computer Science, University of Guelph.

Prerequisites: This tutorial assumes basic exposure to C or Fortran programming, and features hands-on sessions. Familiarity with MPI is not required, but will make the comparisons more meaningful.

Course Outline

  • Purpose of Pilot library and conceptual overview
  • Planning, coding, compiling and running a Pilot application
  • Hands-on: Hello World and sample programs
  • Hands-on: Runtime monitor for usage errors, logging and deadlock detection
  • Patterns in Pilot: master/worker and pipeline
  • Hands-on: Pilot’s collective operations on groups of channels
  • Doing more with Pilot
  • Pilot performance
  • Status and availability of library
  • Fortran API
  • NEW: CellPilot for Cell BE cluster

Course Materials

Lab exercise