Loading...
Please wait, while we are loading the content...
Similar Documents
Memory-mapping support for reducer hyperobjects Citation
| Content Provider | Semantic Scholar |
|---|---|
| Author | Lee, I-Ting Angelina Shafi, Aamir Leiserson, Charles E. |
| Copyright Year | 2012 |
| Abstract | Reducer hyperobjects (reducers) provide a linguistic abstraction for dynamic multithreading that allows different branches of a parallel program to maintain coordinated local views of the same nonlocal variable. In this paper, we investigate how thread-local memory mapping (TLMM) can be used to improve the performance of reducers. Existing concurrency platforms that support reducer hyperobjects, such as Intel Cilk Plus and Cilk++, take a hypermap approach in which a hash table is used to map reducer objects to their local views. The overhead of the hash table is costly — roughly 12× overhead compared to a normal L1-cache memory access on an AMD Opteron 8354. We replaced the Intel Cilk Plus runtime system with our own Cilk-M runtime system which uses TLMM to implement a reducer mechanism that supports a reducer lookup using only two memory accesses and a predictable branch, which is roughly a 3× overhead compared to an ordinary L1-cache memory access. An empirical evaluation shows that the Cilk-M memory-mapping approach is close to 4× faster than the Cilk Plus hypermap approach. Furthermore, the memory-mapping approach admits better locality than the hypermap approach during parallel execution, which allows an application using reducers to |
| File Format | PDF HTM / HTML |
| Alternate Webpage(s) | http://dspace.mit.edu/openaccess-disseminate/1721.1/90259 |
| Language | English |
| Access Restriction | Open |
| Content Type | Text |
| Resource Type | Article |