dc.contributor.author | Zhang, Guowei | |
dc.contributor.author | Sanchez, Daniel | |
dc.date.accessioned | 2020-11-17T15:50:08Z | |
dc.date.available | 2020-11-17T15:50:08Z | |
dc.date.issued | 2017-10 | |
dc.identifier.issn | 1556-6056 | |
dc.identifier.uri | https://hdl.handle.net/1721.1/128501 | |
dc.description.abstract | Memoization improves performance and saves energy by caching and reusing the outputs of repetitive computations. Prior work has proposed software and hardware memoization techniques, but both have significant drawbacks. Software memoization suffers from high runtime overheads, and is thus limited to long computations. Conventional hardware memoization techniques achieve low overheads and can memoize short functions, but they rely on large, special-purpose memoization caches that waste significant area and energy. We propose MCACHE, a hardware technique that leverages data caches for memoization. MCACHE stores memoization tables in memory, and allows them to share cache capacity with normal program data. MCACHE introduces ISA and pipeline extensions to accelerate memoization operations, bridging the gap between software and conventional hardware techniques. Simulation results show that MCACHE improves performance by up to 21 ×, outperforms software memoization by up to 2.2 ×, and achieves similar or superior performance over conventional hardware techniques without any dedicated storage. | en_US |
dc.language.iso | en | |
dc.publisher | Institute of Electrical and Electronics Engineers (IEEE) | en_US |
dc.relation.isversionof | http://dx.doi.org/10.1109/lca.2017.2762308 | en_US |
dc.rights | Creative Commons Attribution-Noncommercial-Share Alike | en_US |
dc.rights.uri | http://creativecommons.org/licenses/by-nc-sa/4.0/ | en_US |
dc.source | MIT web domain | en_US |
dc.title | Leveraging Hardware Caches for Memoization | en_US |
dc.type | Article | en_US |
dc.identifier.citation | Zhang, Guowei and Daniel Sanchez. "Leveraging Hardware Caches for Memoization." IEEE Computer Architecture Letters 17, 1 (January 2018): 59-63 © 2017 IEEE | en_US |
dc.contributor.department | Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory | en_US |
dc.relation.journal | IEEE Computer Architecture Letters | en_US |
dc.eprint.version | Author's final manuscript | en_US |
dc.type.uri | http://purl.org/eprint/type/JournalArticle | en_US |
eprint.status | http://purl.org/eprint/status/PeerReviewed | en_US |
dc.date.updated | 2019-07-03T13:36:26Z | |
dspace.date.submission | 2019-07-03T13:36:26Z | |
mit.journal.volume | 17 | en_US |
mit.journal.issue | 1 | en_US |
mit.metadata.status | Complete | |