The Wavefront Abstraction
The Wavefront abstraction computes a two dimensional recurrence relation.
You provide a function F that accepts the left (x), right (y), and diagonal (d)
values and initial values for the edges of the matrix. You may optionally
provide additional parameters for each cell, given by a matrix P.
The abstraction then runs each of the functions in the order of dependency,
handling load balancing, data movement, fault tolerance, and so on.
Wavefront( array R[x,0], array R[0,y], function F(x,y,d) )
returns matrix R where
R[i,j] = F( R[i-1,j], R[i,j-1], R[i-1,j-1] )
For More Information
Wavefront User's Manual
Getting Help with Wavefront
(Showing papers with tag wavefront. See all papers instead.)
- Li Yu, Christopher Moretti, Andrew Thrasher, Scott Emrich, Kenneth Judd, and Douglas Thain,
Harnessing Parallelism in Multicore Clusters with the All-Pairs, Wavefront, and Makeflow Abstractions,
Journal of Cluster Computing, 13(3), pages 243-256, September, 2010. DOI: 10.1007/s10586-010-0134-7
- Douglas Thain and Christopher Moretti,
Abstractions for Cloud Computing with Condor,
Syed Ahson and Mohammad Ilyas, Cloud Computing and Software Services: Theory and Techniques, pages 153-171, CRC Press, July, 2010. ISBN: 9781439803158
- Kyle Wheeler,
Exploiting Locality with QThreads for Portable Parallel Performance,
Ph.D. Thesis, University of Notre Dame, November, 2009.
- Li Yu, Christopher Moretti, Scott Emrich, Kenneth Judd, and Douglas Thain,
Harnessing Parallelism in Multicore Clusters with the All-Pairs and Wavefront Abstractions,
IEEE High Performance Distributed Computing, pages 1-10, June, 2009. DOI: 10.1145/1551609.1551613