Repository logo
Log in(current)
Repository logoMIT Open ScholarshipDSpace@MIT
  1. Home
  2. MIT Open Access Articles
  3. MIT Open Access Articles
  4. AUTOGEN: automatic discovery of cache-oblivious parallel recursive algorithms for solving dynamic programs

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

Thumbnail Image
Download
Name

Leiserson_Autogen.pdf

Size

1.28 MB

Format

Adobe PDF

Checksum (MD5)

daf30d3d2f6599cadaa05601ee777fdb

Author(s)
Chowdhury, Rezaul
•
Ganapathi, Pramod
•
Tithi, Jesmin Jahan
•
Tang, Yuan
•
Bachmeier, Charles A.
•
Kuszmaul, Bradley C
•
Leiserson, Charles E
•
Solar Lezama, Armando
Date Issued
March 2016
Journal
Proceedings of the 21st ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming - PPoPP '16
Publisher
Association for Computing Machinery
Citation
Chowdhury, Rezaul, et al. "AUTOGEN: Automatic Discovery of Cache-Oblivious Parallel Recursive Algorithms for Solving Dynamic Programs." PPoPP '16 Proceedings of the 21st ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, 12-16 March, 2016, Barcelona, Spain, ACM Press, 2016, pp. 1–12.
Version
Author's final manuscript
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.
MIT Department
Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory
Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science
Terms of Use
Creative Commons Attribution-Noncommercial-Share Alike
http://creativecommons.org/licenses/by-nc-sa/4.0/
Persistent DSpace Link
http://hdl.handle.net/1721.1/114519
DOI of Published Version
https://doi.org/10.1145/2851141.2851167
Repository logo
PrivacyPermissionsAccessibilityContact us
Repository logo
Notify us about copyright concerns.