Skip to main navigation Skip to search Skip to main content

AUTOGEN: Automatic discovery of cache-oblivious parallel recursive algorithms for solving dynamic programs

  • Stony Brook University
  • Massachusetts Institute of Technology
  • Fudan University

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

15 Scopus citations

Abstract

We present AUTOGEN-an algorithm that for a wide class of dynamic programming (DP) problems automatically discovers highly efficient cache-oblivious parallel recursive divide-and-conquer algorithms from inefficient iterative descriptions of DP recurrences. AUTOGEN analyzes the set of DP table locations accessed by the iterative algorithm when run on a DP table of small size, and automatically identifies a recursive access pattern and a corresponding provably correct recursive algorithm for solving the DP recurrence. We use AUTOGEN to autodiscover efficient algorithms for several well-known problems. Our experimental results show that several autodiscovered algorithms significantly outperform parallel looping and tiled loop-based algorithms. Also these algorithms are less sensitive to fluctuations of memory and bandwidth compared with their looping counterparts, and their running times and energy profiles remain relatively more stable. To the best of our knowledge, AUTOGEN is the first algorithm that can automatically discover new nontrivial divide-and-conquer algorithms.

Original languageEnglish
Title of host publication21st ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPoPP 2016 - Proceedings
PublisherAssociation for Computing Machinery
ISBN (Electronic)9781450340922
DOIs
StatePublished - Feb 27 2016
Event21st ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPoPP 2016 - Barcelona, Spain
Duration: Mar 12 2016Mar 16 2016

Publication series

NameProceedings of the ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPOPP
Volume12-16-March-2016
ISSN (Print)1542-0205

Conference

Conference21st ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPoPP 2016
Country/TerritorySpain
CityBarcelona
Period03/12/1603/16/16

Keywords

  • AutoGen
  • Automatic discovery
  • Cache-adaptive
  • Cache-efficient
  • Cacheoblivious
  • Divide-and-conquer
  • Dynamic programming
  • Energy-efficient
  • Parallel
  • Recursive

Fingerprint

Dive into the research topics of 'AUTOGEN: Automatic discovery of cache-oblivious parallel recursive algorithms for solving dynamic programs'. Together they form a unique fingerprint.

Cite this