UMass CS Dept Logo

Jim Canning
Olsen Hall - Room 231
Department of Computer Science
University of Massachusetts Lowell
jim@cs.uml.edu



Striving through individual assignments and projects to achieve a high degree of scholarship in preparation for good citizenship and leadership in society.
(adapted from the Independent School League's principles)
Hawk Head
91.406/91.534 Compiler Construction
91.101 Computing I
 91.102 Computing II
CaPS Research Group
91.350 Topics: Excursions into Computer Science
91.405/553 Parallel Processing


Winter Workout Program

Join Team Gauss




I seek a motivated computer science major who is able to do the work given below. This student must be disciplined and focused. The output of the work is a co-authored paper submission. The student will meet twice weekly with Dr. Canning and Ph.D candidate Nat Tuck. These meetings will mostly review and discuss papers that must be read prior to the meeting. Code reviews will also take place during these meetings.

Basic outline of the work to be done:

    1) Learn the fundamentals of parallel programming using MPI with C.
    2) Learn how to write data parallel programs using ZPL version 2.0.
    3) Implement a serial bitonic sort using MPI/C and also using ZPL 2.0.
    4) Implement a standard parallel bitonic sort. For example, the one sketched out in Pacheco's book.
    5) Thoroughly read and thoroughly understand the article Optimizing Parallel Bitonic Sort by Ionescu and Schuaser
    6)  Implement the  Ionescu and Schauser bitonic sort in MPI/C and also in ZPL.
    7) Give a public review of your source code.
    8) Rerun the experiments given in the Ionsecsu and Schauser paper on our parallel machine (currently 40 cores, getting to at least 64).
    9) Variations of this work are possible. For example, it may be necessary to implement a parallel odd-even transposition sort too.
  10) Give a public presentation of the work done.
  11) Participate in the writing of a technical paper co-authored by Canning and Tuck.

Grading for this course is as follows:

    Do the coding work and make a public presentation describing what you did:                                                                            C
    Do the coding work, make a presentation, and co-author a technical report.                                                                                B
    Do the coding work, make a presentation, and co-author a paper that is submitted for publication in a refereed conference.      A