[Pl-seminar] Semantics Seminar Schedule

Mitchell Wand wand at ccs.neu.edu
Fri Apr 15 00:05:01 EDT 2005


NU Programming Languages Seminar
Wednesday, April 20, 2005
11:45-1:15
Room 366 WVH (http://www.ccs.neu.edu/home/wand/directions.html)

Gene Cooperman

TOP-C, Aspects, and a Vision of Semi-Automatic Parallelism

This will be an informal talk discussing some of the background of high
performance computing, and where there _ought_ to be some opportunities
for aspects.  A grand vision for parallel computing is semi-automatic
parallelism.  In this vision, one writes a sequential program (or takes
a pre-existing program), adds a small number of high-level annotations
(comments), and then transforms the program to a parallel program.

Such transformations can be handled by compileres, by preprocessors,
by transformation programs (such as CIL), or by aspects.  Such strategies are
required for a variety of transformations.  Some examples are:
1) transformation of 'for' and 'while' loops to the trivial loop parallelism;
2) transformation of complex data structures to stub functions for
  marshalling those data structures;
3) transformation of recursive programs to invoke parallelism (see,
  for example, the Cilk package for parallelism using 'spawn' and 'sync');
4) insertion of synchronization for the shared memory version of TOP-C; and
5) insertion of checkpointing code transparently to the application writer.

TOP-C (Task Oriented Parallel C/C++) is a parallel package providing a
compiler script that links a TOP-C application to a run-time library.
TOP-C supports a single API that can link with run-time libraries both
for distributed and shared memory computation.  It has been used, for
example, to parallelize Geant4, a million line C++ program used to
design experiments for the largest collider in the world, at CERN.

Upcoming Events:

volunteers needed!

--Mitch




More information about the pl-seminar mailing list