Show simple item record

dc.contributor.authorLee, I-Ting Angelina
dc.contributor.authorBoyd-Wickizer, Silas
dc.contributor.authorHuang, Zhiyi
dc.contributor.authorLeiserson, Charles E.
dc.date.accessioned2011-06-21T14:30:17Z
dc.date.available2011-06-21T14:30:17Z
dc.date.issued2010-09
dc.identifier.isbn978-1-4503-0178-7
dc.identifier.urihttp://hdl.handle.net/1721.1/64623
dc.description.abstractMany multithreaded concurrency platforms that use a work-stealing runtime system incorporate a "cactus stack," wherein a function's accesses to stack variables properly respect the function's calling ancestry, even when many of the functions operate in parallel. Unfortunately, such existing concurrency platforms fail to satisfy at least one of the following three desirable criteria: full interoperability with legacy or third-party serial binaries that have been compiled to use an ordinary linear stack, a scheduler that provides near-perfect linear speedup on applications with sufficient parallelism, and bounded and efficient use of memory for the cactus stack. We have addressed this cactus-stack problem by modifying the Linux operating system kernel to provide support for thread-local memory mapping (TLMM). We have used TLMM to reimplement the cactus stack in the open-source Cilk-5 runtime system. The Cilk-M runtime system removes the linguistic distinction imposed by Cilk-5 between serial code and parallel code, erases Cilk-5's limitation that serial code cannot call parallel code, and provides full compatibility with existing serial calling conventions. The Cilk-M runtime system provides strong guarantees on scheduler performance and stack space. Benchmark results indicate that the performance of the prototype Cilk-M 1.0 is comparable to the Cilk 5.4.6 system, and the consumption of stack space is modest.en_US
dc.description.sponsorshipNational Science Foundation (U.S.) (Grant 0540248)en_US
dc.description.sponsorshipNational Science Foundation (U.S.) (Grant 0615215)en_US
dc.language.isoen_US
dc.publisherAssociation for Computing Machineryen_US
dc.relation.isversionofhttp://dx.doi.org/10.1145/1854273.1854324en_US
dc.rightsCreative Commons Attribution-Noncommercial-Share Alike 3.0en_US
dc.rights.urihttp://creativecommons.org/licenses/by-nc-sa/3.0/en_US
dc.sourceMIT web domainen_US
dc.titleUsing memory mapping to support cactus stacks in work-stealing runtime systemsen_US
dc.typeArticleen_US
dc.identifier.citationLee, I-Ting Angelina et al. "Using Memory Mapping to Support Cactus Stacks in Work-Stealing Runtime Systems." in Proceedings of the 19th international conference on Parallel architectures and compilation techniques, PACT '10, Sept. 11-15, 2010, Vienna, Austria.en_US
dc.contributor.departmentMassachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratoryen_US
dc.contributor.departmentMassachusetts Institute of Technology. Department of Electrical Engineering and Computer Scienceen_US
dc.contributor.approverLeiserson, Charles E.
dc.contributor.mitauthorLeiserson, Charles E.
dc.contributor.mitauthorLee, I-Ting Angelina
dc.contributor.mitauthorBoyd-Wickizer, Silas
dc.contributor.mitauthorHuang, Zhiyi
dc.relation.journalProceedings of the 19th international conference on Parallel architectures and compilation techniques, PACT '10en_US
dc.eprint.versionAuthor's final manuscripten_US
dc.type.urihttp://purl.org/eprint/type/ConferencePaperen_US
dspace.orderedauthorsLee, I-Ting Angelina; Boyd-Wickizer, Silas; Huang, Zhiyi; Leiserson, Charles E.en
mit.licenseOPEN_ACCESS_POLICYen_US
mit.metadata.statusComplete


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record