Languages

1994, Threaded-C, Massachusetts Institute of Technology

The Parallel Continuation Machine (PCM) was the runtime support for Threaded-C. It was a C-based package that provided continuation-passing-style threads on Thinking Machines Corporation’s Connection Machine Model CM-5 Supercomputer and used work stealing as a general scheduling policy to improve the load balance and locality of the computation. This language is not to be confused with the Threaded-C for EARTH from McGill University and the University of Delaware. PCM is briefly mentioned in the history of Cilk on Benefits of http://supertech.csail.mit.edu/cilk/manual-5.3.2.pdf.

1995, Cilk, Massachusetts Institute of Technology

The first implementation of Cilk (http://supertech.csail.mit.edu/cilk) was a direct descendent of PCM/Threaded-C. Cilk fixed the difficulty of programming continuation tasks and came up with methods to tailor task allocation to caches without knowing the size of the caches with cache-oblivious algorithms. Cilk is an extension of C that supports very efficient fork/join parallelism. Its space efficiency is discussed in http://supertech.csail.mit.edu/papers/cilkjpdc96.pdf. FFTW (http://www.fftw.org) is an example of a cache-oblivious algorithm.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.17.75.227