dc.contributor.author | Clements, Austin T. | |
dc.contributor.author | Kaashoek, M. Frans | |
dc.contributor.author | Zeldovich, Nickolai | |
dc.date.accessioned | 2014-05-09T13:21:21Z | |
dc.date.available | 2014-05-09T13:21:21Z | |
dc.date.issued | 2013-04 | |
dc.identifier.isbn | 9781450319942 | |
dc.identifier.uri | http://hdl.handle.net/1721.1/86888 | |
dc.description.abstract | RadixVM is a new virtual memory system design that enables fully concurrent operations on shared address spaces for multithreaded processes on cache-coherent multicore computers. Today, most operating systems serialize operations such as mmap and munmap, which forces application developers to split their multithreaded applications into multiprocess applications, hoard memory to avoid the overhead of returning it, and so on. RadixVM removes this burden from application developers by ensuring that address space operations on non-overlapping memory regions scale perfectly. It does so by combining three techniques: 1) it organizes metadata in a radix tree instead of a balanced tree to avoid unnecessary cache line movement; 2) it uses a novel memory-efficient distributed reference counting scheme; and 3) it uses a new scheme to target remote TLB shootdowns and to often avoid them altogether. Experiments on an 80 core machine show that RadixVM achieves perfect scalability for non-overlapping regions: if several threads mmap or munmap pages in parallel, they can run completely independently and induce no cache coherence traffic. | en_US |
dc.description.sponsorship | Google (Firm) | en_US |
dc.description.sponsorship | National Science Foundation (U.S.) (Award 0915164) | en_US |
dc.description.sponsorship | National Science Foundation (U.S.) (Award 0964106) | en_US |
dc.language.iso | en_US | |
dc.publisher | Association for Computing Machinery (ACM) | en_US |
dc.relation.isversionof | http://dx.doi.org/10.1145/2465351.2465373 | 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 | RadixVM: Scalable address spaces for multithreaded applications | en_US |
dc.type | Article | en_US |
dc.identifier.citation | Austin T. Clements, M. Frans Kaashoek, and Nickolai Zeldovich. 2013. RadixVM: scalable address spaces for multithreaded applications. In Proceedings of the 8th ACM European Conference on Computer Systems (EuroSys '13). ACM, New York, NY, USA, 211-224. | en_US |
dc.contributor.department | Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory | en_US |
dc.contributor.department | Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science | en_US |
dc.contributor.mitauthor | Clements, Austin T. | en_US |
dc.contributor.mitauthor | Kaashoek, M. Frans | en_US |
dc.contributor.mitauthor | Zeldovich, Nickolai | en_US |
dc.relation.journal | Proceedings of the 8th ACM European Conference on Computer Systems (EuroSys '13) | en_US |
dc.eprint.version | Author's final manuscript | en_US |
dc.type.uri | http://purl.org/eprint/type/ConferencePaper | en_US |
eprint.status | http://purl.org/eprint/status/NonPeerReviewed | en_US |
dspace.orderedauthors | Clements, Austin T.; Kaashoek, M. Frans; Zeldovich, Nickolai | en_US |
dc.identifier.orcid | https://orcid.org/0000-0003-0238-2703 | |
dc.identifier.orcid | https://orcid.org/0000-0001-7098-586X | |
mit.license | OPEN_ACCESS_POLICY | en_US |
mit.metadata.status | Complete | |