IEEE Toronto Section logo IEEE logo
2009 IEEE Toronto International Conference –
Science and Technology for Humanity
TIC-STH 2009
September 26-27, 2009
Ryerson University, 245 Church Street
Toronto, Ontario, Canada

TUTORIAL 2:

Title: Using the Pilot Library: A Fresh Alternative to MPI for HPC Clusters

Speaker: Dr. Bill Gardner
Assisting: Graduate students John Carter & Natalie Girard
Department of Computing & Information Science
University of Guelph, Ontario

» Register here
Deadline: September 21, 2009, 11:59PM EDT

Date: Saturday, September 26, 2009
Time: 1:30 PM; Duration – 3.5 hours
Attend onsite: 245 Church St. (Ryerson University), Toronto
Attend online: Web conferencing option available

Cost

Conference Attendees: Free (requires registration ID number)
IEEE and/or PMI members: $55 (Canadian)
All others: $75 (Canadian)

Who should attend

  • Novice parallel programmers
  • Software architects working on cluster-based solutions
  • Scientific programmers from all disciplines, but particularly: math, physics, chemistry
  • High-performance computing specialists with an interest in different design/implementation methodologies
  • Parallel programming instructors

Speaker

Bill Gardner is a faculty member in the Computing and Information Science Department at the University of Guelph. He teaches software development, embedded systems, and parallel programming. Based in the Modeling and Design Automation Group, his main research area is concurrent system synthesis from formal specifications.



PNP's Earned: Attendees will receive one PNP (Pilot notepad)!

BYOL: "Bring Your Own Laptop" to participate in hands-on exercises. Any OS is fine; you only need wifi and a browser.

Course Overview

PilotPilot is a new way to program high-performance clusters 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 mirrors C’s 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.

This tutorial assumes basic exposure to C programming. Familiarity with MPI is not required, but will make the comparisons more meaningful.

Hands-on sessions will work for both onsite and online attendees!

What You Will Learn

  • 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
  • Compare/contrast Pilot and MPI
  • Pilot performance
  • Status and availability of library

Pilot website: http://carmel.cis.uoguelph.ca/pilot/

Research on Pilot is supported by a Fellowship.

Cluster logins for hands-on sessions kindly provided by the HPCVL consortium, of which Ryerson University is a member site.