TOP-C Projects for Parallel Computing

Prof. Gene Cooperman

The following are suggested projects for COM 1770 (Parallel Computing). You are welcome to suggest other projects if you like.

Some of the projects below have the potential to result in conference papers. In my experience, to develop a project into a conference paper requires at least another academic quarter of work.

Throughout this web page, there are many references to TOP-C (Task Oriented Parallel C/C++). TOP-C is freely available and easily installed and used. It supports both shared memory and distributed memory parallelism with a single API (Application Program Interface).

Brief Overview

  1. Applied Software Design: C++ binding for TOP-C library (The largest issue is callbacks. See topc.cc for an approach.)
  2. Networking: Robustness of TOP-C when slaves die (In distributed memory mode, TOP-C runs on top of an MPI subset. Like most MPI implementations, when any participating node dies, then MPI aborts.)
    There are two parts to this project, that can be carried out by two different teams:
  3. Tutorial: Develop progressively more difficult sequence of TOP-C examples to demonstrate concepts. Include document explaining examples.
  4. Marshalling/Serialization: There is already a package, marshalgen, that does automated marshalling for many cases. The problem is to find its weak points and extend it. See the paper, and the software.
  5. Research Problem: Develop automated system for parallelization with TOP-C as back end. During this quarter, it will be enough to do a paper-and-pencil design --- but with good coverage. There is opportunity to turn this into an important publishable research paper, if you continue to work on it.

===============================

===============================

Gene Cooperman
College of Computer Science, 215CN
Northeastern University
Boston, MA 02115
e-mail: gene@ccs.neu.edu
Phone: (617) 373-8686
Fax: (617) 373-5121