{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,12,18]],"date-time":"2025-12-18T19:51:14Z","timestamp":1766087474510,"version":"3.41.2"},"publisher-location":"New York, NY, USA","reference-count":49,"publisher":"ACM","license":[{"start":{"date-parts":[[2019,10,12]],"date-time":"2019-10-12T00:00:00Z","timestamp":1570838400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"name":"Defense Advanced Research Projects Agency","award":["HR0011-18-3-0007"],"award-info":[{"award-number":["HR0011-18-3-0007"]}]},{"DOI":"10.13039\/100000001","name":"National Science Foundation","doi-asserted-by":"publisher","award":["CAREER-1452994"],"award-info":[{"award-number":["CAREER-1452994"]}],"id":[{"id":"10.13039\/100000001","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":[],"published-print":{"date-parts":[[2019,10,12]]},"DOI":"10.1145\/3352460.3358272","type":"proceedings-article","created":{"date-parts":[[2019,10,11]],"date-time":"2019-10-11T11:16:45Z","timestamp":1570792605000},"page":"440-452","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":24,"title":["Leveraging Caches to Accelerate Hash Tables and Memoization"],"prefix":"10.1145","author":[{"given":"Guowei","family":"Zhang","sequence":"first","affiliation":[{"name":"Computer Science and Artificial Intelligence Laboratory, Massachusetts Institute of Technology"}]},{"given":"Daniel","family":"Sanchez","sequence":"additional","affiliation":[{"name":"Computer Science and Artificial Intelligence Laboratory, Massachusetts Institute of Technology"}]}],"member":"320","published-online":{"date-parts":[[2019,10,12]]},"reference":[{"key":"e_1_3_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1109\/MM.2006.73"},{"key":"e_1_3_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICDE.2013.6544839"},{"key":"e_1_3_2_1_3_1","volume-title":"Proceedings of the USENIX Annual Technical Conference (USENIX ATC).","author":"Breslow Alex D","year":"2016","unstructured":"Alex D Breslow, Dong Ping Zhang, Joseph L Greathouse, Nuwan Jayasena, and Dean M Tullsen. 2016. Horton Tables: Fast Hash Tables for In-Memory Data-Intensive Computing.. In Proceedings of the USENIX Annual Technical Conference (USENIX ATC)."},{"key":"e_1_3_2_1_4_1","article-title":"Universal classes of hash functions","volume":"18","author":"Lawrence Carter J","year":"1979","unstructured":"J Lawrence Carter and Mark N Wegman. 1979. Universal classes of hash functions. J. Comput. System Sci. 18, 2 (1979).","journal-title":"J. Comput. System Sci."},{"key":"e_1_3_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.1145\/2435264.2435306"},{"key":"e_1_3_2_1_6_1","unstructured":"Peng Chen Krishna Kavi and Robert Akl. 2006. Performance enhancement by eliminating redundant function execution. In ANSS-39."},{"key":"e_1_3_2_1_7_1","volume-title":"Partial resolution for redundant operation table. Microprocessors and Microsystems 32, 2","author":"Choi Byung-Soo","year":"2008","unstructured":"Byung-Soo Choi and Jun-Dong Cho. 2008. Partial resolution for redundant operation table. Microprocessors and Microsystems 32, 2 (2008)."},{"key":"e_1_3_2_1_8_1","volume-title":"Feitelson","author":"Citron Daniel","year":"2000","unstructured":"Daniel Citron and Dror G. Feitelson. 2000. Hardware Memoization of Mathematical and Trigonometric Functions. Technical Report. The Hebrew University of Jerusalem."},{"key":"e_1_3_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1109\/MICRO.1999.809453"},{"key":"e_1_3_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1145\/1807128.1807152"},{"key":"e_1_3_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1109\/PACT.2000.888334"},{"key":"e_1_3_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.1145\/2814270.2814290"},{"key":"e_1_3_2_1_13_1","volume-title":"Proceedings of the 2nd IEEE\/ACM International Symposium on Code Generation and Optimization (CGO).","author":"Ding Yonghua","year":"2004","unstructured":"Yonghua Ding and Zhiyuan Li. 2004. A compiler scheme for reusing intermediate computation results. In Proceedings of the 2nd IEEE\/ACM International Symposium on Code Generation and Optimization (CGO)."},{"key":"e_1_3_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1145\/2000064.2000108"},{"key":"e_1_3_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/1168857.1168880"},{"key":"e_1_3_2_1_16_1","volume-title":"Proceedings of the 10th USENIX Symposium on Networked Systems Design and Implementation (NSDI).","author":"Fan Bin","year":"2013","unstructured":"Bin Fan, David G Andersen, and Michael Kaminsky. 2013. MemC3: Compact and Concurrent MemCache with Dumber Caching and Smarter Hashing.. In Proceedings of the 10th USENIX Symposium on Networked Systems Design and Implementation (NSDI)."},{"key":"e_1_3_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1145\/3079856.3080234"},{"key":"e_1_3_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1109\/MICRO.2012.24"},{"key":"e_1_3_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1109\/HPCA.1999.744342"},{"key":"e_1_3_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1109\/26.168785"},{"key":"e_1_3_2_1_21_1","volume-title":"EMEA","author":"Knudsen Jesper","year":"2008","unstructured":"Jesper Knudsen. 2008. Nangate 45nm open cell library. CDNLive, EMEA (2008)."},{"key":"e_1_3_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1145\/2540708.2540748"},{"key":"e_1_3_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1109\/L-CA.2013.17"},{"key":"e_1_3_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1145\/2749469.2750416"},{"key":"e_1_3_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.1145\/2485922.2485926"},{"volume-title":"Near Memory Key\/Value Lookup Acceleration","author":"Lloyd Scott","key":"e_1_3_2_1_26_1","unstructured":"Scott Lloyd and Maya Gokhale. 2017. Near Memory Key\/Value Lookup Acceleration. Technical Report. Lawrence Livermore National Lab (LLNL)."},{"key":"e_1_3_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1145\/1065010.1065034"},{"key":"e_1_3_2_1_28_1","volume-title":"Hash table methods. ACM Computing Surveys (CSUR) 7, 1","author":"Maurer Ward Douglas","year":"1975","unstructured":"Ward Douglas Maurer and Theodore Gyle Lewis. 1975. Hash table methods. ACM Computing Surveys (CSUR) 7, 1 (1975)."},{"key":"e_1_3_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.5555\/791219.791666"},{"key":"e_1_3_2_1_30_1","volume-title":"Developing a tool for memoizing functions in C++. ACM SIGPLAN Notices 33, 8","author":"McNamee Paul","year":"1998","unstructured":"Paul McNamee and Marty Hall. 1998. Developing a tool for memoizing functions in C++. ACM SIGPLAN Notices 33, 8 (1998)."},{"key":"e_1_3_2_1_31_1","volume-title":"Efficient counting of k-mers in DNA sequences using a bloom filter. BMC bioinformatics 12, 1","author":"Melsted Pall","year":"2011","unstructured":"Pall Melsted and Jonathan K Pritchard. 2011. Efficient counting of k-mers in DNA sequences using a bloom filter. BMC bioinformatics 12, 1 (2011)."},{"key":"e_1_3_2_1_32_1","volume-title":"Memo functions and machine learning. Nature 218, 5136","author":"Michie Donald","year":"1968","unstructured":"Donald Michie. 1968. Memo functions and machine learning. Nature 218, 5136 (1968)."},{"key":"e_1_3_2_1_33_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.jalgor.2003.12.002"},{"key":"e_1_3_2_1_34_1","doi-asserted-by":"publisher","DOI":"10.1145\/1852761.1852775"},{"key":"e_1_3_2_1_35_1","doi-asserted-by":"publisher","DOI":"10.1145\/2485922.2485963"},{"key":"e_1_3_2_1_36_1","doi-asserted-by":"publisher","DOI":"10.1145\/264107.264200"},{"key":"e_1_3_2_1_37_1","doi-asserted-by":"publisher","DOI":"10.1145\/1080091.1080114"},{"key":"e_1_3_2_1_38_1","doi-asserted-by":"publisher","DOI":"10.1145\/3033019.3033024"},{"key":"e_1_3_2_1_39_1","volume-title":"Erven Rohou, and Andr\u00e9 Seznec.","author":"Suresh Arjun","year":"2015","unstructured":"Arjun Suresh, Bharath Narasimha Swamy, Erven Rohou, and Andr\u00e9 Seznec. 2015. Intercepting functions for memoization: a case study using transcendental functions. ACM TACO 12, 2 (2015)."},{"key":"e_1_3_2_1_40_1","volume-title":"The 2014 Non-volatile Memories Workshop (NVMW).","author":"Tanaka Shingo","year":"2014","unstructured":"Shingo Tanaka and Christos Kozyrakis. 2014. High performance hardware-accelerated flash key-value store. In The 2014 Non-volatile Memories Workshop (NVMW)."},{"key":"e_1_3_2_1_41_1","volume-title":"An integrated encyclopedia of DNA elements in the human genome. Nature 489, 7414","author":"The ENCODE Project Consortium","year":"2012","unstructured":"The ENCODE Project Consortium. 2012. An integrated encyclopedia of DNA elements in the human genome. Nature 489, 7414 (2012)."},{"key":"e_1_3_2_1_42_1","volume-title":"Proceedings of the 25th conference Parallel and Distributed Computing and Networks (PDCN).","author":"Tsumura Tomoaki","year":"2007","unstructured":"Tomoaki Tsumura, Ikuma Suzuki, Yasuki Ikeuchi, Hiroshi Matsuo, Hiroshi Nakashima, and Yasuhiko Nakashima. 2007. Design and evaluation of an auto-memoization processor. In Proceedings of the 25th conference Parallel and Distributed Computing and Networks (PDCN)."},{"key":"e_1_3_2_1_43_1","doi-asserted-by":"publisher","DOI":"10.1145\/1346281.1346300"},{"key":"e_1_3_2_1_44_1","volume-title":"A technique for high-performance data compression. Computer 6, 17","author":"Welch Terry A.","year":"1984","unstructured":"Terry A. Welch. 1984. A technique for high-performance data compression. Computer 6, 17 (1984)."},{"key":"e_1_3_2_1_45_1","volume-title":"Proceedings of the 21st Austrian Workshop on Microelectronics (Austrochip).","author":"Wolf Clifford","year":"2013","unstructured":"Clifford Wolf, Johann Glaser, and Johannes Kepler. 2013. Yosys-a free Verilog synthesis suite. In Proceedings of the 21st Austrian Workshop on Microelectronics (Austrochip)."},{"key":"e_1_3_2_1_46_1","doi-asserted-by":"publisher","DOI":"10.14778\/3025111.3025113"},{"key":"e_1_3_2_1_47_1","doi-asserted-by":"publisher","DOI":"10.14778\/2735508.2735511"},{"key":"e_1_3_2_1_48_1","article-title":"Leveraging Hardware Caches for Memoization","volume":"17","author":"Zhang Guowei","year":"2018","unstructured":"Guowei Zhang and Daniel Sanchez. 2018. Leveraging Hardware Caches for Memoization. Computer Architecture Letters (CAL) 17, 1 (2018).","journal-title":"Computer Architecture Letters (CAL)"},{"key":"e_1_3_2_1_49_1","doi-asserted-by":"publisher","DOI":"10.1145\/564691.564709"}],"event":{"name":"MICRO '52: The 52nd Annual IEEE\/ACM International Symposium on Microarchitecture","sponsor":["SIGMICRO ACM Special Interest Group on Microarchitectural Research and Processing","IEEE CS"],"location":"Columbus OH USA","acronym":"MICRO '52"},"container-title":["Proceedings of the 52nd Annual IEEE\/ACM International Symposium on Microarchitecture"],"original-title":[],"link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3352460.3358272","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3352460.3358272","content-type":"application\/pdf","content-version":"vor","intended-application":"syndication"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3352460.3358272","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,7,29]],"date-time":"2025-07-29T22:24:57Z","timestamp":1753827897000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3352460.3358272"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2019,10,12]]},"references-count":49,"alternative-id":["10.1145\/3352460.3358272","10.1145\/3352460"],"URL":"https:\/\/doi.org\/10.1145\/3352460.3358272","relation":{},"subject":[],"published":{"date-parts":[[2019,10,12]]},"assertion":[{"value":"2019-10-12","order":3,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}