{"conference":{"name":"EuroSys: European Conference on Computer Systems"},"_id":"770","oa_version":"None","status":"public","year":"2014","publication_status":"published","extern":"1","acknowledgement":"Dan Alistarh - Part of this work was performed while the author was a Postdoctoral\r\nAssociate a MIT CSAIL, supported in part by NSF grant CCF-1217921,\r\nDoE ASCR grant ER26116/DE-SC0008923, and by grants from the Oracle\r\nand Intel corporations.\r\nPatrick Eugester - Supported in part by DARPA grant N11AP20014 and NSF grant CNS-\r\n1117065.\r\nMaurice Herlihy - Supported by NSF grant 1301924.\r\nNir Shavit - Supported in part by NSF grants CCF-1217921 and CCF-1301926, DoE\r\nASCR grant ER26116/DE-SC0008923, and by grants from the Oracle and\r\nIntel corporations.","date_updated":"2023-02-23T13:14:25Z","publisher":"ACM","abstract":[{"text":"Dynamic memory reclamation is arguably the biggest open problem in concurrent data structure design: All known solutions induce high overhead, or must be customized to the specific data structure by the programmer, or both. This paper presents StackTrack, the first concurrent memory reclamation scheme that can be applied automatically by a compiler, while maintaining efficiency. StackTrack eliminates most of the expensive bookkeeping required for memory reclamation by leveraging the power of hardware transactional memory (HTM) in a new way: it tracks thread variables dynamically, and in an atomic fashion. This effectively makes all memory references visible without having threads pay the overhead of writing out this information. Our empirical results show that this new approach matches or outperforms prior, non-automated, techniques.","lang":"eng"}],"type":"conference","month":"01","doi":"10.1145/2592798.2592808","article_processing_charge":"No","date_created":"2018-12-11T11:48:24Z","user_id":"2DF688A6-F248-11E8-B48F-1D18A9856A87","author":[{"last_name":"Alistarh","orcid":"0000-0003-3650-940X","full_name":"Alistarh, Dan-Adrian","id":"4A899BFC-F248-11E8-B48F-1D18A9856A87","first_name":"Dan-Adrian"},{"first_name":"Patrick","full_name":"Eugster, Patrick","last_name":"Eugster"},{"first_name":"Maurice","last_name":"Herlihy","full_name":"Herlihy, Maurice"},{"first_name":"Alexander","last_name":"Matveev","full_name":"Matveev, Alexander"},{"full_name":"Shavit, Nir","last_name":"Shavit","first_name":"Nir"}],"language":[{"iso":"eng"}],"title":"StackTrack: An automated transactional approach to concurrent memory reclamation","day":"01","citation":{"ama":"Alistarh D-A, Eugster P, Herlihy M, Matveev A, Shavit N. StackTrack: An automated transactional approach to concurrent memory reclamation. In: ACM; 2014. doi:10.1145/2592798.2592808","ista":"Alistarh D-A, Eugster P, Herlihy M, Matveev A, Shavit N. 2014. StackTrack: An automated transactional approach to concurrent memory reclamation. EuroSys: European Conference on Computer Systems.","short":"D.-A. Alistarh, P. Eugster, M. Herlihy, A. Matveev, N. Shavit, in:, ACM, 2014.","chicago":"Alistarh, Dan-Adrian, Patrick Eugster, Maurice Herlihy, Alexander Matveev, and Nir Shavit. “StackTrack: An Automated Transactional Approach to Concurrent Memory Reclamation.” ACM, 2014. https://doi.org/10.1145/2592798.2592808.","mla":"Alistarh, Dan-Adrian, et al. StackTrack: An Automated Transactional Approach to Concurrent Memory Reclamation. ACM, 2014, doi:10.1145/2592798.2592808.","apa":"Alistarh, D.-A., Eugster, P., Herlihy, M., Matveev, A., & Shavit, N. (2014). StackTrack: An automated transactional approach to concurrent memory reclamation. Presented at the EuroSys: European Conference on Computer Systems, ACM. https://doi.org/10.1145/2592798.2592808","ieee":"D.-A. Alistarh, P. Eugster, M. Herlihy, A. Matveev, and N. Shavit, “StackTrack: An automated transactional approach to concurrent memory reclamation,” presented at the EuroSys: European Conference on Computer Systems, 2014."},"publist_id":"6888","date_published":"2014-01-01T00:00:00Z"}