The Community for Technology Leaders
RSS Icon
Subscribe
Issue No.02 - July-December (2006 vol.5)
pp:
C. Blundell , Dept. of Comput. & Inf. Sci., Pennsylvania Univ., Philadelphia, PA
E.C. Lewis , Dept. of Comput. & Inf. Sci., Pennsylvania Univ., Philadelphia, PA
M.M.K. Martin , Dept. of Comput. & Inf. Sci., Pennsylvania Univ., Philadelphia, PA
ABSTRACT
Transactional memory has great potential for simplifying multithreaded programming by allowing programmers to specify regions of the program that must appear to execute atomically. Transactional memory implementations then optimistically execute these transactions concurrently to obtain high performance. This work shows that the same atomic guarantees that give transactions their power also have unexpected and potentially serious negative effects on programs that were written assuming narrower scopes of atomicity. We make four contributions: (1) we show that a direct translation of lock-based critical sections into transactions can introduce deadlock into otherwise correct programs, (2) we introduce the terms strong atomicity and weak atomicity to describe the interaction of transactional and non-transactional code, (3) we show that code that is correct under weak atomicity can deadlock under strong atomicity, and (4) we demonstrate that sequentially composing transactional code can also introduce deadlocks. These observations invalidate the intuition that transactions are strictly safer than lock-based critical sections, that strong atomicity is strictly safer than weak atomicity, and that transactions are always composable
INDEX TERMS
System recovery, Interleaved codes, Programming profession, Information science, Hardware, Software performance, Interference, Transaction databases, Computer languages, Law,Computer Systems Organization, Concurrent distributed and parallel languages, Language Classifications, Programming Languages, Software/Software Engineering, Multi-core/single-chip multiprocessors, Parallel Architectures, Processor Architectures, Computer Systems Organization, Multiple Data Stream Architectures (Multiprocessors), Processor Architectures
CITATION
C. Blundell, E.C. Lewis, M.M.K. Martin, "Subtleties of transactional memory atomicity semantics", IEEE Computer Architecture Letters, vol.5, no. 2, pp. , July-December 2006, doi:10.1109/L-CA.2006.18
53 ms
(Ver 2.0)

Marketing Automation Platform Marketing Automation Tool