3,472 Hits in 4.6 sec

The Common Case Transactional Behavior of Multithreaded Programs

JaeWoong Chung, H. Chafi, C. Cao Minh, A. McDonald, B. Carlstrom, C. Kozyrakis, K. Olukotun
The Twelfth International Symposium on High-Performance Computer Architecture, 2006.  
This work addresses this problem by analyzing the common case transactional behavior for 35 multithreaded programs from a wide range of application domains.  ...  However, the lack of transaction-based programs makes it difficult to understand the merits of each proposal and to tune future TM implementations to the common case behavior of real application.  ...  Experimental Methodology To provide detailed insights into the common case transactional behavior of real programs, we study a large set of existing multithreaded applications.  ... 
doi:10.1109/hpca.2006.1598135 dblp:conf/hpca/ChungCMMCKO06 fatcat:szov2kti5vdzzoyo3ckbx6tuye

Porting OMTTs to CORBA [chapter]

Raul Silaghi, Alfred Strohmeier, Jörg Kienzle
2003 Lecture Notes in Computer Science  
The Common Object Request Broker Architecture standardizes a platform-and programming-language-independent distributed object computing environment.  ...  A blocking commit protocol ensures that once in a transaction, a thread cannot leave before the outcome of the transaction has been determined, guaranteeing the ACID properties for multithreaded transactions  ...  Two additional rules restrict thread behavior inside and outside of a multithreaded transaction: a thread created inside an open multithreaded transaction must also terminate inside the transaction; and  ... 
doi:10.1007/978-3-540-39964-3_95 fatcat:6x7u4l57ivfardxf5lili4fvou

Transactional execution: toward reliable, high-performance multithreading

R. Rajwar, J. Goodman
2003 IEEE Micro  
Explicit hardware support for multithreaded software, either in the form of shared-memory chip multiprocessors or hardware multithreaded architectures, is becoming increasingly common.  ...  As hardware support for shared-memory applications, we have proposed the use of Transactional Lock Removal (TLR), 1 which ensures high performance while simplifying error-free programming and providing  ...  Explicit hardware support for multithreaded software, either in the form of shared-memory chip multiprocessors or hardware multithreaded architectures, is becoming increasingly common.  ... 
doi:10.1109/mm.2003.1261395 fatcat:xebtil52yvec3e6ffe6kw3smqe

An Empirical Study over Correctness Properties for Multithreaded Programs

Abdul Rahim Mohamed Ariffin, Isma Farah Siddiqui, Scott Uk-Jin Lee
2016 Indian Journal of Science and Technology  
With the findings of these properties, we also analyzed the high-priority and low-priority correctness properties for multithreaded programs.  ...  However, existing tools are still unable to discover all possible correctness properties for multithreaded programs and most of the tools only verifies deterministic multithreaded programs.  ...  A transaction schedule is serializable if its outcome is equal to the outcome all of its transactions which were executed serially 13 .  ... 
doi:10.17485/ijst/2016/v9i17/92730 fatcat:hsovlngggnbepab2d3q4ne4ntm

Thread-safe dynamic binary translation using transactional memory

JaeWoong Chung, Michael Dalton, Hari Kannan, Christos Kozyrakis
2008 High-Performance Computer Architecture  
This paper presents a practical solution for correct execution of multithreaded programs within DBT frameworks. To eliminate races involving metadata, we propose the use of transactional memory (TM).  ...  This is the first such framework that correctly handles multithreaded binaries without serialization. We show that the use of software transactions in the DBT leads to a runtime overhead of 40%.  ...  None of these solutions are satisfactory. First, multithreaded programs are becoming increasingly common due to the availability of multi-core chips.  ... 
doi:10.1109/hpca.2008.4658646 dblp:conf/hpca/ChungDKK08 fatcat:tgpdkrlqzfc5vl74d3r5bfghry

Transaction Support for Ada [chapter]

Jörg Kienzle, Ricardo Jiménez-Peris, Alexander Romanovsky, M. Patiño Martinez
2001 Lecture Notes in Computer Science  
Then the design of the framework is given.  ...  This paper describes the transaction support framework OPTIMA and its implementation for Ada 95. First, a transaction model that fits concurrent programming languages is presented.  ...  This case study has shown the benefits of using open multithreaded transactions for system structuring and fault-tolerance in concurrent systems.  ... 
doi:10.1007/3-540-45136-6_23 fatcat:lxbmbusplzas3j3jpshf2wnlzm

SingleTrack: A Dynamic Determinism Checker for Multithreaded Programs [chapter]

Caitlin Sadowski, Stephen N. Freund, Cormac Flanagan
2009 Lecture Notes in Computer Science  
Multithreaded programs are prone to errors caused by unintended interference between concurrent threads.  ...  Such code does not satisfy the traditional non-interference property of atomicity (or serializability), however, and so existing atomicity tools are inadequate for checking deterministically-parallel code  ...  In either case, the relative scheduling of threads in subcomputations does not affect the program's overall behavior.  ... 
doi:10.1007/978-3-642-00590-9_28 fatcat:obg35dlckrci5krlxpfpeutuom

Observationally Cooperative Multithreading [article]

Christopher A. Stone, Melissa E. O'Neill, Sonja A. Bohr, Adam M. Cozzette, M. Joe DeBlasio, Julia Matsieva, Stuart A. Pernsteiner, Ari D. Schumer
2015 arXiv   pre-print
Programmers can also defer the choice of concurrency-control mechanism (e.g., locks or transactions) until after they have written their programs, at which point they can compare concurrency-control strategies  ...  Programmers write code using the well-understood cooperative (i.e., nonpreemptive) multithreading model for uniprocessors.  ...  The observable behavior of programs is consistent with execution on a uniprocessor with cooperative multithreading, even if behind the scenes threads are running simultaneously or preempting one another  ... 
arXiv:1502.05094v1 fatcat:poj7ejgatzd7lgrwhcmfnff5pu

Concurrency and Persistent Memory [chapter]

Steve Scargall
2020 Programming Persistent Memory  
The first section of this chapter highlights common practical solutions for building multithreaded applications for persistent memory.  ...  We describe the limitation of the Persistent Memory Development Kit (PMDK) transactional libraries, such as libpmemobj and libpmemobj-cpp, for concurrent execution.  ...  It forces data inconsistency issues in cases of abnormal program termination or transaction aborts.  ... 
doi:10.1007/978-1-4842-4932-1_14 fatcat:l3paas7j3ncypbqnr5rgmdxghe

A generic static analyzer for multithreaded Java programs

P. Ferrara
2012 Software, Practice & Experience  
The Happens-Before Memory Model Memory models define which behaviors are allowed during the execution of a multithreaded program.  ...  The experimental results show that ¼heckmate is (i) precise enough to catch common bugs, (ii) fast enough to be applied to programs containing thousands of statements and a potentially unbounded number  ...  Common Patterns of Multithreaded Programs Lea [45] presents an overview of several representative patterns of Java multithreaded programs.  ... 
doi:10.1002/spe.2126 fatcat:5zifplk4qncwxovt6cqetqqjna


Tongping Liu, Charlie Curtsinger, Emery D. Berger
2011 Proceedings of the Twenty-Third ACM Symposium on Operating Systems Principles - SOSP '11  
These systems require program modification, do not ensure determinism in the presence of data races, do not work with generalpurpose multithreaded programs, or run up to 8.4× slower than pthreads.  ...  the performance of pthreads.  ...  We acknowledge the support of the Gigascale Systems Research Center, one of six research centers funded under the Focus Center Research Program (FCRP), a Semiconductor Research Corporation entity.  ... 
doi:10.1145/2043556.2043587 dblp:conf/sosp/LiuCB11 fatcat:kfbb4ati55dblmbnsiv5d3c7ui

The Problem with Threads

E.A. Lee
2006 Computer  
Acknowledgments I acknowledge the thought-provoking comments and suggestions from Joe Buck (Synopsys), Mike Burrows (Google), Stephen Edwards (Columbia), Jim Larus (Microsoft), Sandeep Shukla (Virginia  ...  Databases are an example of a common use of patterns in concurrent computation, particularly with the notion of transactions.  ...  Transactions can be supported on distributed hardware, as is common for databases; in software on shared-memory machines; or, most interestingly, in hardware on shared-memory machines.  ... 
doi:10.1109/mc.2006.180 fatcat:2xr64ouajvd5flqceb7sfrrzq4

Effects of multithreading on cache performance

H. Kwak, B. Lee, A.R. Hurson, Suk-Han Yoon, Woo-Jong Hahn
1999 IEEE transactions on computers  
The performance of multithreading is not only affected by the overlapping of memory latency with useful computation, but also strongly depends on the cache behavior and the overhead of multithreading (  ...  Also, the dynamic behavior of multithreaded execution hinders the instruction locality that results in a high number of misses in the L1 instruction cache.  ...  ACKNOWLEDGMENTS The authors would like to thank ETRI for their support and the valuable comments from reviewers.  ... 
doi:10.1109/12.752659 fatcat:6b24u3lsnrcoflhbfb453n46sa

IPC Considered Harmful for Multiprocessor Workloads

A.R. Alameldeen, D.A. Wood
2006 IEEE Micro  
In fact, the instruction path of multithreaded workloads running on multiple processors can vary substantially. 1 Spin locks and other synchronization mechanisms magnify small timing variations into very  ...  The IPC measurement's inaccuracy stems from the incorrect assumption that instructions per program remains constant across all execu-tions.  ...  Alameldeen was a graduate student at the University of Wisconsin-Madison.  ... 
doi:10.1109/mm.2006.73 fatcat:yqhe3aswzbgvfne5n3s6c4b624

TransPlant: A parameterized methodology for generating transactional memory workloads

J. Poe, C. Hughes, Tao Li
2009 2009 IEEE International Symposium on Modeling, Analysis & Simulation of Computer and Telecommunication Systems  
We also show how TransPlant can mimic the behavior of SPLASH-2 and STAMP transactional memory workloads.  ...  Currently, for performance evaluations, most researchers rely on manually converted lock-based multithreaded workloads or the small group of programs written explicitly for transactional memory.  ...  program that maintains the behavior of the original program.  ... 
doi:10.1109/mascot.2009.5366659 dblp:conf/mascots/PoeHL09 fatcat:rjzy6za7vfbvzidx2yxoacmwra
« Previous Showing results 1 — 15 out of 3,472 results