This year USF hosted the Northern California Site for the Pacific Northwest Region of the ACM International Collegiate Programming Contest

Office: | Harney 540 |

Phone: | 415-422-6630 |

Fax: | 415-422-5800 |

Email: |
domain: usfca.edu, user: peter |

Mail: | Department of Computer Science |

University of San Francisco | |

San Francisco, CA 94117 | |

Office Hours: |
MW 4:40-5:30, F 10:40-11:30, and by appointment |

Spring 2015 Classes: | Computer Architecture, Section 1 |

Linear Algebra and Probability, Section 2 | |

Fall 2014 Classes: | Introduction to Parallel Computing, Section 1 |

Introduction to Parallel Computing, Section 2 | |

Spring 2014 Classes: | Computer Architecture |

Parallel and Distributed Computing | |

Fall 2013 Classes: | Discrete Mathematics |

Introduction to Parallel Computing | |

Spring 2013: | Computer Architecture |

Fall 2012: | Discrete Mathematics |

Introduction to Parallel Computing | |

Spring 2012: | Computer Architecture |

Fall 2011: | Introduction to Computer Science I |

Introduction to Parallel Computing | |

Spring 2011: | Parallel and Distributed Computing |

Fall 2010: | Discrete Mathematics |

Introduction to Parallel Computing | |

Spring 2009: | Linear Algebra and Probability |

Fall 2008: | Introduction to Parallel Computing |

Spring 2008: | Parallel and Distributed Computing |

My main research interest is in parallel computing. I've
been involved in the development of the
MPI Standard for message-passing,
and I've written a short
* User's Guide
to MPI*. My book *
Parallel Programming with MPI* is an elementary introduction
to programming parallel systems that use the MPI 1 library of
extensions to C and Fortran.
It is intended for use by students and professionals with
some knowledge of programming conventional, single-processor systems,
but who have little or no experience programming multiprocessor systems.

I've also worked in computational neuroscience, and my students and I have developed a collection of programs, Parallel Neurosys, for the simulation of large networks of biologically accurate neurons on parallel computers.

Most recently I've written a more general introduction to parallel
programming, *An Introduction to
Parallel Programming*. This is also an elementary
introduction to parallel programming, but in addition to MPI,
it introduces parallel programming in Pthreads and
OpenMP.

Unless otherwise indicated all of the software on this site (cs.usfca.edu/~peter) is released under the BSD 2-Clause License.

USF Computer Science Department Home Page

USF Mathematics Department Home Page

USF Home Page