For Dynamic Programs (DP) recursive divide- Consider the ...esaule/NSF-PI-CSR-2017...Our WR-DPs use...

Post on 26-Jun-2020

0 views 0 download

Transcript of For Dynamic Programs (DP) recursive divide- Consider the ...esaule/NSF-PI-CSR-2017...Our WR-DPs use...

We can even autogenerate thoserecursive algorithms (known as R-DPs)!

But R-DPs may have lower parallelism than iterative wavefront algorithms

Consider the DP for the Longest Common Subsequence (LCS) problem as an example

But LCS R-DP loses parallelism due to false dependencies!

Our WR-DPs use “timing functions” to launch recursive functions in wavefront order

WR-DPs are efficient in theory

For Dynamic Programs (DP) recursive divide-&-conquer has advantages over iterative codes!

LCS has a simple R-DP using linear space We can systematically transform an R-DP to WR-DP by incorporating the timing functions

WR-DPs are also efficient in practice

WR-DPs have good bounds under state-of-the-art schedulers for shared-memory programs

We propose recursive wavefront algorithms (WR-DPs) – R-DPs with improved parallelism

Other work partially supported by CNS-1553510 (PI: Rezaul Chowdhury)