15~Chapter_18 - TransactionalMemory Companionslidesfor

Info iconThis preview shows pages 1–16. Sign up to view the full content.

View Full Document Right Arrow Icon
Transactional Memory Companion slides for The Art of Multiprocessor Programming by Maurice Herlihy & Nir Shavit
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Art of Multiprocessor Programming 2 From the New York Times … SAN FRANCISCO, May 7. 2004 - Intel said on Friday that it was scrapping its development of two microprocessors , a move that is a shift in the company's business strategy….
Background image of page 2
Art of Multiprocessor Programming 3 Moore’s Law (hat tip: Simon Peyton-Jones) Clock speed  flattening  sharply Transistor  count still  rising
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Art of Multiprocessor Programming 4 Multicore Architetures Learn how the  multi-core  processor architecture  plays a central role in  Intel 's platform approach.  ….” “AMD  is leading the industry to  multi-core   technology for the x86 based computing market  …” Sun' s multicore  strategy centers around multi- threaded software.  ...  “
Background image of page 4
Art of Multiprocessor Programming 5 Why do we care? Time no longer cures software bloat When you double your path length You can’t just wait 6 months Your software must somehow exploit twice as much  concurrency
Background image of page 5

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Art of Multiprocessor Programming 6 The Problem Cannot exploit cheap threads Today’s Software  Non-scalable methodologies Today’s Hardware Poor support for scalable synchronization
Background image of page 6
Art of Multiprocessor Programming 7 Locking
Background image of page 7

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Art of Multiprocessor Programming 8 Coarse-Grained Locking Easily made correct … But not scalable.
Background image of page 8
Art of Multiprocessor Programming 9 Fine-Grained Locking Here comes trouble …
Background image of page 9

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Art of Multiprocessor Programming 10 Why Locking Doesn’t Scale Not Robust Relies on conventions Hard to Use Conservative Deadlocks Lost wake-ups Not Composable
Background image of page 10
Art of Multiprocessor Programming 11 Locks are not Robust If a thread holding a lock is delayed … No one else can make  progress
Background image of page 11

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Art of Multiprocessor Programming 12 Why Locking Doesn’t Scale Not Robust Relies on conventions Hard to Use Conservative Deadlocks Lost wake-ups Not Composable
Background image of page 12
Art of Multiprocessor Programming 13 Locking Relies on Conventions Relation between Lock bit and object bits Exists only in programmer’s mind /* * When a locked buffer is visible to the I/O layer * BH_Launder is set. This means before unlocking * we must clear BH_Launder,mb() on alpha and then * clear BH_Lock, so no reader can see BH_Launder set * on an unlocked buffer and then risk to deadlock. */ Actual comment from  Linux Kernel (hat tip: Bradley Kuszmaul)
Background image of page 13

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Art of Multiprocessor Programming 14 Why Locking Doesn’t Scale Not Robust Relies on conventions Hard to Use Conservative Deadlocks Lost wake-ups Not Composable
Background image of page 14
Art of Multiprocessor Programming 15 Sadistic Homework enq(x ) enq(y ) Double-ended queue No interference if ends “far enough” apart
Background image of page 15

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Image of page 16
This is the end of the preview. Sign up to access the rest of the document.

This note was uploaded on 11/09/2011 for the course ENGINEERIN 247 taught by Professor Staff during the Fall '09 term at Rutgers.

Page1 / 102

15~Chapter_18 - TransactionalMemory Companionslidesfor

This preview shows document pages 1 - 16. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online