| Multithreaded software transactional memory and OpenMP |
| Full text |
Pdf
(376 KB)
|
| Source
|
Memory Performance: Dealing With Applications, Systems And Architecture
archive
Proceedings of the 2007 workshop on MEmory performance: DEaling with Applications, systems and architecture
table of contents
Brasov, Romania
Pages 81-88
Year of Publication: 2007
ISBN:978-1-9593-807-7
|
|
Authors
|
|
Miloš Milovanović
|
Barcelona Supercomputing Center, Barcelona, Spain
|
|
Roger Ferrer
|
Barcelona Supercomputing Center, Barcelona, Spain
|
|
Vladimir Gajinov
|
Barcelona Supercomputing Center, Barcelona, Spain
|
|
Osman S. Unsal
|
Barcelona Supercomputing Center, Barcelona, Spain
|
|
Adrian Cristal
|
Barcelona Supercomputing Center, Barcelona, Spain
|
|
Eduard Ayguadé
|
Barcelona Supercomputing Center, Barcelona, Spain
|
|
Mateo Valero
|
Barcelona Supercomputing Center, Barcelona, Spain
|
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 11, Downloads (12 Months): 97, Citation Count: 2
|
|
|
ABSTRACT
Transactional Memory (TM) is a key future technology for emerging many-cores. On the other hand, OpenMP provides a vast established base for writing parallel programs, especially for scientific applications. Combining TM with OpenMP provides a rich, enhanced programming environment and an attractive solution to the many-core software productivity problem. In this paper, we discuss the first multithreaded runtime environment for supporting our combined TM and OpenMP framework. We present the extensions of OpenMP for using Transactional Memory. We then present the novel multithreaded STM design with a dedicated thread for eager asynchronous conflict detection. Conflict detection will be executed in a separate thread so the transaction will not waste time on that. On the other hand, eager conflict detection is asynchronous which will increase speculative parallel execution. We also include an initial performance analysis of the runtime system and possible gains which can be achieved.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
J. Larus and R. Rajwar, "Transactional Memory", Morgan Claypool, 2006.
|
| |
2
|
OpenMP Architecture Review Board, OpenMP Application Program Interface, May 2005.
|
 |
3
|
Tim Harris , Mark Plesko , Avraham Shinnar , David Tarditi, Optimizing memory transactions, Proceedings of the 2006 ACM SIGPLAN conference on Programming language design and implementation, June 11-14, 2006, Ottawa, Ontario, Canada
|
| |
4
|
E. Allen, D. Chase, V. Luchangco, J.-W. Maessen, S. Ryu, G. L. Steele Jr. and S. Tobin-Hochstadt. The Fortress Language Specification. Sun Microsystems, 2005.
|
 |
5
|
Philippe Charles , Christian Grothoff , Vijay Saraswat , Christopher Donawa , Allan Kielstra , Kemal Ebcioglu , Christoph von Praun , Vivek Sarkar, X10: an object-oriented approach to non-uniform cluster computing, Proceedings of the 20th annual ACM SIGPLAN conference on Object oriented programming, systems, languages, and applications, October 16-20, 2005, San Diego, CA, USA
|
| |
6
|
Cray. Chapel Specification. February 2005.
|
 |
7
|
|
 |
8
|
|
 |
9
|
Peter Damron , Alexandra Fedorova , Yossi Lev , Victor Luchangco , Mark Moir , Daniel Nussbaum, Hybrid transactional memory, Proceedings of the 12th international conference on Architectural support for programming languages and operating systems, October 21-25, 2006, San Jose, California, USA
|
 |
10
|
Sanjeev Kumar , Michael Chu , Christopher J. Hughes , Partha Kundu , Anthony Nguyen, Hybrid transactional memory, Proceedings of the eleventh ACM SIGPLAN symposium on Principles and practice of parallel programming, March 29-31, 2006, New York, New York, USA
[doi> 10.1145/1122971.1123003]
|
| |
11
|
|
| |
12
|
A. Shriraman, V. J. Marathe, S. Dwarkadas, M. L. Scott, D. Eisenstat, C. Heriot, W. N. Scherer III, and M. F. Spear. "Hardware Acceleration of Software Transactional Memory", TRANSACT 2006.
|
| |
13
|
J. Balart, A. Duran, M. Gonzàlez, X. Martorell, E. Ayguadé and J. Labarta. "Nanos Mercurium: A Research Compiler for OpenMP". European Workshop on OpenMP (EWOMP'04). Pp. 103--109. Stockholm, Sweden. October 2004
|
 |
14
|
Xavier Martorell , Eduard Ayguadé , Nacho Navarro , Julita Corbalán , Marc González , Jesús Labarta, Thread fork/join techniques for multi-level parallelism exploitation in NUMA multiprocessors, Proceedings of the 13th international conference on Supercomputing, p.294-301, June 20-25, 1999, Rhodes, Greece
[doi> 10.1145/305138.305206]
|
| |
15
|
M. Milovanović, O. S. Unsal, A. Cristal, S. Stipić, F. Zyulkyarov and M. Valero, "Compile time support for using Transactional Memory in C/C++ applications", 11th Annual Workshop on the Interaction between Compilers and Computer Architecture INTERACT-11, Phoenix, Arizona, February 2007.
|
 |
16
|
Austen McDonald , JaeWoong Chung , Brian D. Carlstrom , Chi Cao Minh , Hassan Chafi , Christos Kozyrakis , Kunle Olukotun, Architectural Semantics for Practical Transactional Memory, Proceedings of the 33rd annual international symposium on Computer Architecture, p.53-65, June 17-21, 2006
|
| |
17
|
|
| |
18
|
M. Milovanović, R. Ferrer, O. Unsal, A. Cristal, E. Ayguadé, J. Labarta and M. Valero, "Transactional Memory and OpenMP". In the Proceedings of the Intl. Workshop on OpenMP, Beijing/China, June 2007.
|
| |
19
|
N. Sonmez, C. Perfumo, S. Stipic, A. Cristal, O. Unsal and M. Valero, "unreadTVar: Extending Haskell Software transactional Memory for Performance". In the Proceedings of the Eight Symposium on Trends in Functional Programming, New York/USA, April 2007.
|
| |
20
|
Gauss-Seidel Finite Difference Method for solving the linear system of equations. Online material available at: http://wwwunix.mcs.anl.gov/dbpp/text/node17.html#SECTION02330000000000000000, August 27, 2007.
|
| |
21
|
K. Fraser, Practical lock freedom. PhD thesis, University of Cambridge Computer Laboratory, 2003.
|
CITED BY 2
|
|
Miloš Milovanović , Roger Ferrer , Vladimir Gajinov , Osman S. Unsal , Adrian Cristal , Eduard Ayguadé , Mateo Valero, Nebelung: execution environment for transactional OpenMP, International Journal of Parallel Programming, v.36 n.3, p.326-346, June 2008
|
|
|
Yang Ni , Adam Welc , Ali-Reza Adl-Tabatabai , Moshe Bach , Sion Berkowits , James Cownie , Robert Geva , Sergey Kozhukow , Ravi Narayanaswamy , Jeffrey Olivier , Serguei Preis , Bratin Saha , Ady Tal , Xinmin Tian, Design and implementation of transactional constructs for C/C++, ACM SIGPLAN Notices, v.43 n.10, September 2008
|
|