[ news | information | lectures | problem sets | links ]

CS181 - Seminar in High Performance Computing - Fall 2006
MW 2:45-4:00 in Andrew 157
Prof. Chen


Please check here regularly for assorted announcements. You are responsible for being aware of information posted here.

  • 10/04/2006: The original problem set 2 (particles) webpage had a bug in the first bullet of the "to do" list for the first part. That has now been corrected.
  • 9/27/2006: I will have office hours next week both Monday 6:30-8 and Tuesday 4-5. I'm cancelling next week's Wednesday (10/4) office hours.
  • 9/26/2006: My office hours tomorrow (Wednesday, 9/27) will be from 5:30-6:30PM (instead of from 4-5).
  • 5/09/2006: This class has been uncancelled. Since pre-registration has already ended, you can register in the fall.
  • 4/20/2006: This class has been cancelled. If you want to get a sense of what would have gone into it, however, you can take a look below.
  • Information

    In the world of supercomputing, performance is the most important metric. In this seminar we will explore what this means for system architects, language designers, code developers, and end users. Potential topics include parallel programming, computer architecture, performance modelling, benchmarking, code optimization, numerical methods, applications, and high productivity computing. The prerequisite is CS105.

    Grades will be based on problem sets, paper presentations, class participation, and a final project (which can be either a programming project or a survey paper).

    CS181 meets on Mondays and Wednesdays from 2:45 to 4PM in Andrew 157.


    Topics listed for future dates should be considered tentative.

    Week Date Topics To do
    1 8/28
    *** no class (semester starts 8/29) ***
    8/30 what is HPC and why does anyone care
    the real prerequisites for this class
    introductions and administrivia
    2 9/4 machine architecture
    evolution of processors
    taxonomys for parallel architecture
    due by 2:45PM: ps0
    9/6 parallel architectures:
    (vector, SIMD, MPPs, shared memory, ...)
    3 9/11 working with parallel machines
    9/13 discussion of first problem set
    implications for HPC
    due 11:30PM on 9/12: part I of ps1
    due by 2:45PM: part II of ps1
    4 9/18 parallel programming languages
    9/20 guest lecture by Rich Vuduc due by 2:45PM: paper summary 1
    5 9/25 parallel programming languages
    (HPF, MPI, ...)
    9/27 MPI (hello.c, sendrecv.c)
    second programming problem set
    6 10/2 evaluating performance due by 2:45PM: paper summary 2
    *** no class ***
    7 10/9 parallel prefix
    work-time, PRAM models
    10/11 BSP, logP models due 11:30PM on 10/10: part I of ps2
    8 10/16
    *** no class (fall recess) ***
    10/18 discussion of second problem set
    implications for HPC
    due 11:30PM on 10/17: part II of ps2
    9 10/23 n-body simulations
    10/25 parallel data structures
    10 10/30 partitioning due by 2:45PM: paper summary 3
    11/1 discussion of project proposals due by 2:45PM: project proposal
    11 11/6 partitioning
    11/8 benchmarking
    12 11/13 performance modelling
    performance prediction
    due by 2:45PM: paper summary 4
    11/15 progress reports
    (order of presentations)
    13 11/20 guest lecture by Rajit Manohar
    *** no class (day before Thanksgiving) ***
    14 11/27 user/usability studies
    11/29 project presentations
    (order of presentations)
    15 12/4 project presentations
    (order of presentations)
    12/6 wrapping up
    course evaluations
    12/8 due by midnight: final project report


  • ps0 - summary, due 2:45PM on 9/4.
  • ps1 - matrix multiplication
  • part 1 due 11:30PM on 9/12
  • part 2 due 2:45PM on 9/13
  • paper1:
  • read and write a short summary (look at the administrivia handed out on the first day of class for guidelines) of the following paper. Email the summary to me by 2:30PM on 9/20 or bring it on paper to class that day.
  • Self-adapting linear algebra algorithms and software by Demmel, Dongarra, Eijkhout, Fuentes, Petite, Vuduc, Whaley, and Yelick.
  • Read the following article for fun:
  • Writing the fastest code, by hand, for fun by Markoff. Published in New York Times November 28, 2005.
  • paper2:
  • read and write short summaries of the following two papers. Email the summary to me by 2:30PM on 10/2 or bring it on paper to class that day.
  • Parallelization of a Dynamic Unstructured Application using Three Leading Paradigms by Oliker and Biswas.
  • An Evaluation of Global Address Space Languages: Co-Array Fortran and Unified Parallel C by Coarfa, Dotsenko, Mellor-Crummey, Cantonnet, El-Ghazawi, Mohanty, and Yao.
  • ps2 - particles
  • part 1 due 11:30PM on 10/10
  • part 2 due 11:30PM on 10/17
  • paper3:
  • read and write short summaries of the following two papers. Email the summary to me by 2:30PM on 10/30 or bring it on paper to class that day.
  • How to Get Good Performance from the CM-5 Data Network by Brewer and Kuszmaul.
  • Apex-Map: A Global Data Access Benchmark to Analyze HPC Systems and Parallel Programming Paradigms by Strohmaier and Shan.
  • final project, assorted deadlines between 11/1 and 12/6.
  • Links