Picture of Paul Lu

Paul Lu

Associate Professor
Department of Computing Science

U of A Logo

Department of Computing Science
University of Alberta;
Edmonton, Alberta, T6G 2E8

paullu [at] cs.ualberta.ca
Office: Athabasca Hall (ATH) 340
Phone: (780) 492-7760
Fax: (780) 492-1071

July 2009
Software Carpentry at the Universities of Alberta and Toronto.

December 2007:
The University of Alberta , and the Dept. of Computing Science , are the
Official Host of the 2008 ACM International Collegiate Programming Contest (ICPC).

[ ICPC at U of Alberta || Sign up as a volunteer ]

November 15, 2007:
Team University of Alberta wins the first Cluster Challenge
at Supercomputing 2007 , Reno, Nevada, November 2007.

Trellis NAS Bridge Appliance
August 15, 2006:
The Trellis NBA wins Second Prize in
VMware's Ultimate Virtual Appliance Challenge.

CISS Home Page

The Trellis Project

My Faculty Profile (with detailed Research Interests).
Member of the Software Systems Research Group.
Also, member of the Bioinformatics Research Group.
Here is a map of our campus. We are in buildings 42 and 49.
See the current weather in Edmonton.




  1. Cam Macdonell (Ph.D., File Systems and Virtual Machines)
  2. Yang Wang (Ph.D., Scheduling and File Systems in Trellis)
  3. Jordan Patterson (M.Sc., TBA)
  4. Erkan Unal (M.Sc., TBA)


January to April 2009:
  • [ NEW COURSE ]: Science 100: Integrated Science
  • CMPUT 201: Practical Programming Methodology
  • [ NEW COURSE ]: CMPUT 497: Cluster Challenge and Computational Science
  • MINT 706: Internet Applications and Programming
  • MINT 714: High-Performance Server Programming


  1. Calvin Chan (M.Sc., Defended December 2004)
  2. Mike Closson (M.Sc., Defended September 2004)
  3. Maria Cutumisu (M.Sc., Defended December 2002)
  4. Meng Ding (M.Sc., Defended May 2005)
  5. Adrian Driga (M.Sc., Defended December 2001)
  6. Chris Dutchyn (M.Sc., Defended March 2002)
  7. Roman Eisner (M.Sc., Defended September 2005)
  8. Mark Goldenberg (M.Sc., Defended April 2003)
  9. Nicholas Lamb (M.Sc., Defended August 2005)
  10. Paul Nalos (M.Sc., Defended August 2006)
  11. Cam Macdonell (M.Sc., Defended September 2002)
  12. Ernie Novillo (M.Sc., Defended October 2001)
  13. Chris Pinchak (M.Sc., Defended December 2002)
  14. Limin Zhang (M.Sc., Defended September 2003)


  1. Stupid Barrier Tricks (SBT) : A user-level library to conveniently interface with low-level hardware performance counters. Supports easy on-line monitoring and debugging of single-program multiple-data (SPMD) applications with barriers. (Category: Parallel performance tool.)
  2. PBSWeb : A Web-based interface to the Portable Batch System (PBS). Supports submitting and monitoring batch jobs. Will support the automatic control and submission of jobs to multiple different queues at different high-performance resource centers. Supported by a grant from C3. (Category: Metacomputing/grid computing system)


Previous (1999 to 2008):
  • Graduate Course: CMPUT 605 Software Systems Research Seminar. Starts in First Term; for credit in Second Term. (January 2001-2005)
  • Graduate Course: CMPUT 681 Parallel and Distributed Systems (January 2000, September 2000, January 2002, September 2002, January 2005, September 2007)
  • Graduate Course: MINT 706: Internet Applications and Programming (2005, 2006, 2007, 2008)
  • Graduate Course: MINT 714: High-Performance Server Programming (2008)
  • CMPUT 201: Practical Programming Methodology (September 2005, January 2007, September 2007, January 2009)
  • CMPUT 229: Computer Organization and Architecture I. (September 2000, September 2001)
  • CMPUT 285: Computer Organization and Architecture II. (January 1999) (Now revised and known as CMPUT 229 ).
  • CMPUT 379: Operating System Concepts. (January 1999, September 1999, January 2002, September 2002, September 2003, January 2004, January 2005)
  • CMPUT 399: Computational Science and Clusters (January 2008)
  • CMPUT 497: Cluster Challenge and Computational Science (January 2009)
  • CMPUT 498: Concurrency, Performance, and Architectures in Software Systems (January 2004)


High-Performance Computing and Metacomputing

I am interested in all aspects of high-performance computing, but especially parallel and distributed systems. My research program centers on systems software and, most recently, software infrastructure for wide-area overlay metacomputing. I am the PI of the Trellis Project.

The generous financial support of the the Natural Sciences and Engineering Research Council of Canada (NSERC), Alberta Science and Research Authority, the University of Alberta, the Canada Foundation for Innovation (CFI), SGI, Sun Microsystems, and C3.ca is greatly appreciated.

Currently, I am a member of the Software Systems Research Group.

Bioinformatics: Proteome Analyst and PA-GOSUB

The Protoeme Analyst (PA) project is developing a web-based system for high-throughput protein annotation. Using machine-learned classifiers, PA can predict several properties of proteins (from their primary sequence information), including GO molecular function and subcellular localization. In fact, PA is the current, most-accurate predictor of subcellular localization.

Proteome Analyst has been generously supported by the Canadian Protein Engineering Network of Centres of Excellence (PENCE) and Sun Microsystems.

See the Bioinformatics Research Group web page.


In 1996, I co-edited (with Greg Wilson) a Parallel Programming Using C++, a book describing many of the key C++-based parallel programming systems. That book is available from MIT Press. The foreword is by Bjarne Stroustrup. The table of contents is available here Gzip'ed Postscript (67 kbytes). The slides from a survey talk at the POOMA'96 conference is available here Gzip'ed Postscript (20 kbytes).

In the past, I developed Aurora, a distributed shared data (DSD) system based on a standard C++ class library and run-time system. The system exploits language mechanisms for creating abstract data types and does not contain any language extensions.

Also, I've worked on the parallel search of game trees as part of the Chinook checker playing program project. Chinook is the World Man-Machine Champion, the first computer program to win a human world championship. This feat is recognized by the Guinness Book of World Records.

$Id: home.pic.html,v 1.153 2009/05/29 13:06:07 paullu Exp paullu $