ebook img

Semantics of Shared Variables & Synchronization aka Memory Models PDF

125 Pages·2010·0.39 MB·English
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Semantics of Shared Variables & Synchronization aka Memory Models

Semantics of Shared Variables & Synchronization a.k.a. Memory Models Sarita V. Adve Hans-J. Boehm University of Illinois HP Labs sadve@illinois.edu hans.boehm@hp.com Acks: Vikram Adve, Rob Bocchino, Lawrence Crowl, Kourosh Gharachorloo, Mark Hill, Doug Lea, Jeremy Manson, Paul McKenney, Clark Nelson, Bill Pugh, Marc Snir, Herb Sutter, and many others Shared Variable Semantics or Memory Models Parallelism for the masses! Shared-memory, threads most common Memory model = Legal values for reads Shared Variable Semantics or Memory Models Parallelism for the masses! Shared-memory, threads most common Memory model = Legal values for reads Shared Variable Semantics or Memory Models Parallelism for the masses! Shared-memory, threads most common Memory model = Legal values for reads Shared Variable Semantics or Memory Models Parallelism for the masses! Shared-memory, threads most common Memory model = Legal values for reads Shared Variable Semantics or Memory Models Parallelism for the masses! Shared-memory, threads most common Memory model = Legal values for reads Shared Variable Semantics or Memory Models Parallelism for the masses! Shared-memory, threads most common Memory model = Legal values for reads Our goals • Demystify • Convey pitfalls • Convey fundamental problems • Motivate new research What is a Memory Model? • Memory model defines what values a read can return Initially A=B=Flag=0 Thread 1 Thread 2 A = 26 while (Flag != 1) {;} B = 90 r1 = B 90 0 … r2 = A 26 Flag = 1 … • Are concurrent accesses allowed? • What is a concurrent access? • When do updates become visible to other threads? • Can an update be partially visible? • … Why Should You Care? • Interface between program and transformers of program – Affects programmer, compiler, runtime, hardware, … Dynamic A optimizer s s C++ program Compiler e m b l y Hardware • Weakest system component exposed to the programmer – Not just a “hardware problem” nor just a “compiler problem” – Not just a processor issue; memory design affects system model Desirable Properties of a Memory Model • 3 Ps – Programmability – Performance – Portability • Challenge: hard to satisfy all 3 Ps

Description:
Page 1 Mark Hill, Doug Lea, Jeremy Manson, Paul McKenney, Clark Nelson, Bill Pugh, E.g., TSO/x86: need care for Synch Store → Synch Load.
See more

The list of books you might like

book image

The 48 Laws of Power

Robert Greene
·1998
·2.84 MB

book image

Believe Me

Tahereh Mafi
·177 Pages
·2021
·2.19 MB

book image

The Sweetest Oblivion (Made Book 1)

Danielle Lori
·360 Pages
·2018
·1.72 MB

book image

As Good as Dead

Holly Jackson
·2021
·6.41 MB

book image

By Bread Alone

Lester R. Brown and Erik P. Eckholm (Auth.)
·264 Pages
·1975
·7.11 MB

book image

CAAP AC 11-001

14 Pages
·2014
·4.54 MB

book image

Über Encephalitis Subcorticalis Chronica Progressiva (Binswanger)

Hans Diekmann (auth.)
·16 Pages
·1919
·0.955 MB

book image

C. J. Cherryh - Union Alliance -Tripoint

Cherryh C J
·307 Pages
·2016
·0.7 MB

book image

CRS 5: Labelling of Pre-packaged Foods

CARICOM Regional Organisation for Standards and Quality (CROSQ)
·2010
·1 MB

book image

Afkondigingsblad van Aruba 1993 no. 64

DWJZ - Directie Wetgeving en Juridische Zaken
·3 Pages
·1993
·0.03 MB

book image

Afkondigingsblad van Aruba 1993 no. 62

DWJZ - Directie Wetgeving en Juridische Zaken
·3 Pages
·1993
·0.03 MB

book image

DTIC ADA459921: A Framework for Learning Declarative Structure

Defense Technical Information Center
·0.13 MB