Proceedings of the 19th International Conference on Parallel Architectures and Compilation Techniques 2010
DOI: 10.1145/1854273.1854324
|View full text |Cite
|
Sign up to set email alerts
|

Using memory mapping to support cactus stacks in work-stealing runtime systems

Abstract: Many multithreaded concurrency platforms that use a workstealing 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 sch… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
2
1

Citation Types

0
30
0

Year Published

2012
2012
2020
2020

Publication Types

Select...
3
2
1

Relationship

1
5

Authors

Journals

citations
Cited by 34 publications
(30 citation statements)
references
References 29 publications
0
30
0
Order By: Relevance
“…Nonetheless, the internal data structure size grows moderately as the thread count increases by about 18 KB per thread for CilkMR and about 1 KB per thread for Phoenix++. This difference arises because CilkMR requires a varying number of stacks depending on how work stealing progresses [21].…”
Section: Memory Consumptionmentioning
confidence: 99%
“…Nonetheless, the internal data structure size grows moderately as the thread count increases by about 18 KB per thread for CilkMR and about 1 KB per thread for Phoenix++. This difference arises because CilkMR requires a varying number of stacks depending on how work stealing progresses [21].…”
Section: Memory Consumptionmentioning
confidence: 99%
“…This section describes thread-local memory mapping (TLMM) [22,23], which Cilk-M uses to cause the virtual-memory hardware to map reducers to local views. TLMM provides an efficient and flexible way for a thread to map certain regions of virtual memory independently from other threads while still sharing most of its virtual-memory address space.…”
Section: Thread-local Memory Mappingmentioning
confidence: 99%
“…Cilk-M's TLMM mechanism [22,23] was originally developed to enable a work-stealing runtime system to maintain a "cactusstack" abstraction, thereby allowing arbitrary calling between parallel and serial code. To implement TLMM, we modified the Linux kernel, producing a kernel version we call TLMM-Linux.…”
Section: Thread-local Memory Mappingmentioning
confidence: 99%
See 2 more Smart Citations