inherent limitations on dap tms 1 inherent limitations on disjoint-access parallel transactional...

17
Inherent limitations on DAP T Ms 1 Inherent Limitations on Disjoint-Access Parallel Transactional Memory Hagit Attiya, Eshcar Hillel, Alessia Milani Technion

Upload: esther-floyd

Post on 16-Dec-2015

213 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Inherent limitations on DAP TMs 1 Inherent Limitations on Disjoint-Access Parallel Transactional Memory Hagit Attiya, Eshcar Hillel, Alessia Milani Technion

Inherent limitations on DAP TMs 1

Inherent Limitations on Disjoint-Access Parallel Transactional Memory

Hagit Attiya, Eshcar Hillel, Alessia MilaniTechnion

Page 2: Inherent limitations on DAP TMs 1 Inherent Limitations on Disjoint-Access Parallel Transactional Memory Hagit Attiya, Eshcar Hillel, Alessia Milani Technion

Inherent limitations on DAP TMs 2

Complexity Bounds for STMs: Why? Indicate futile design choices Elucidate expectations (specification) Spell out assumptions

(models of the architecture)

Page 3: Inherent limitations on DAP TMs 1 Inherent Limitations on Disjoint-Access Parallel Transactional Memory Hagit Attiya, Eshcar Hillel, Alessia Milani Technion

Inherent limitations on DAP TMs 333

DAP: Disjoint Access Parallelism

T1 Read(Y) Write(X1)

T2Write(X2)

T3 Read(X2)Read(X1)

Disjoint

dat

a se

ts

n

o co

nten

tion

Data

sets

are

con

nect

ed

m

ay con

tend

Y

X2X1 T3

T1

Improves scalability for large data structures by reducing interference

Page 4: Inherent limitations on DAP TMs 1 Inherent Limitations on Disjoint-Access Parallel Transactional Memory Hagit Attiya, Eshcar Hillel, Alessia Milani Technion

Inherent limitations on DAP TMs 444

Optimizing for Read-Only Transactions

Transactions that do not modify the data should

Be invisible (not write to low-level objects) Avoid contention for the memory

Always terminate successfully (wait-free)

Page 5: Inherent limitations on DAP TMs 1 Inherent Limitations on Disjoint-Access Parallel Transactional Memory Hagit Attiya, Eshcar Hillel, Alessia Milani Technion

Inherent limitations on DAP TMs 555

Some Known STMs…

AlgorithmDAPInvisible read-only Tx

Read-only Tx termination

[Herlihy, Luchangco, Moir & Scherer]

[Avni & Shavit][Riegel, Felber & Fetzer]

Coincidence or inherent tradeoff ?

Page 6: Inherent limitations on DAP TMs 1 Inherent Limitations on Disjoint-Access Parallel Transactional Memory Hagit Attiya, Eshcar Hillel, Alessia Milani Technion

Inherent limitations on DAP TMs 666

Inherent Tradeoff

Theorem. There is no TM implementation that is DAP

and has invisible & wait-free read-only transactions

The paper also shows a lower bound:Theorem. A transaction with a data set of size t must

write to t-1 base objects

Both proofs utilize the flippable execution, used to prove lower bounds for atomic snapshot objects

[Israeli & Shirazi] [Attiya, Ellen & Fatourou]

Page 7: Inherent limitations on DAP TMs 1 Inherent Limitations on Disjoint-Access Parallel Transactional Memory Hagit Attiya, Eshcar Hillel, Alessia Milani Technion

Inherent limitations on DAP TMs 7

Flippable Execution w/ 2 Updaters

p1

p2

q s1 … sl-1 sl … sk

U1 … Ul …

U0 … Ul-1 … Uk

A complete transaction in which p1 writes l-1 to X1A read-only

transaction by q that reads X1 , X2

Ek

Page 8: Inherent limitations on DAP TMs 1 Inherent Limitations on Disjoint-Access Parallel Transactional Memory Hagit Attiya, Eshcar Hillel, Alessia Milani Technion

Inherent limitations on DAP TMs 8

Flippable Execution w/ 2 Updaters

p1

p2

q s1 … sl-1 sl … sk

U1 … Ul …

U0 … Ul-1 … Uk

Ek

Indistinguishable from executions where the order of (each pair of) updates is flipped…

In one of two ways (forward and backward).

Page 9: Inherent limitations on DAP TMs 1 Inherent Limitations on Disjoint-Access Parallel Transactional Memory Hagit Attiya, Eshcar Hillel, Alessia Milani Technion

Inherent limitations on DAP TMs 9

Flippable Execution: Backward Flip

p1

p2

q s1 … sl-1 sl … sk

U1 … Ul …

U0 … Ul-1 … Uk

Ek

p1

p2

q s1 … sl-1 sl … sk

U1 … Ul…

U0 … Ul-1 … Uk

Backward Flip

Page 10: Inherent limitations on DAP TMs 1 Inherent Limitations on Disjoint-Access Parallel Transactional Memory Hagit Attiya, Eshcar Hillel, Alessia Milani Technion

Inherent limitations on DAP TMs 10

Lemma 1. The read-only transaction of q cannot terminate successfully

Relies on strict serializabitly (~linearizability) The serialization of committed transactions

must preserve the real-time order of non-overlapping transactions

Why Flippable Executions?

Page 11: Inherent limitations on DAP TMs 1 Inherent Limitations on Disjoint-Access Parallel Transactional Memory Hagit Attiya, Eshcar Hillel, Alessia Milani Technion

Inherent limitations on DAP TMs 11

Serialization of Ek

p1

p2

q s1 … sl-1 sl … sk

U1 … Ul …

U0 … Ul-1 … Uk

Ek

U1 … Ul … U0 Ul-1 UkSerializationof Ek:

Serialization point

Returns (l-1,l-2)

Page 12: Inherent limitations on DAP TMs 1 Inherent Limitations on Disjoint-Access Parallel Transactional Memory Hagit Attiya, Eshcar Hillel, Alessia Milani Technion

Inherent limitations on DAP TMs 12

Nowhere to Serialize

p1

p2

q s1 … sl-1 sl … sk

U1 … Ul …

U0 … Ul-1 … Uk

Ek

U1 … Ul … U0 Ul-1 UkSerialization

Returns (l-1,l-2)

p1

p2

q s1 … sl-1 sl … sk

U1 … Ul…

U0 … Ul-1 … Uk

BW Flip Still

returns (l-1,l-2)

U1 … Ul Ul-1 … Uk

U0Serialization

Indistinguishable from some flip

(say, backward)

Page 13: Inherent limitations on DAP TMs 1 Inherent Limitations on Disjoint-Access Parallel Transactional Memory Hagit Attiya, Eshcar Hillel, Alessia Milani Technion

Inherent limitations on DAP TMs 1313

Completing the Proof

Show that a flippable execution exists The read-only transaction is invisible

its steps can be removed Transactions Ul & Ul-1 have disjoint data sets

Ul & Ul-1 do not “communicate” (by DAP)

Ul & Ul-1 can be flipped

By Lemma 1, the read-only transaction cannot terminate successfully If aborts, can apply the same argument again…

Page 14: Inherent limitations on DAP TMs 1 Inherent Limitations on Disjoint-Access Parallel Transactional Memory Hagit Attiya, Eshcar Hillel, Alessia Milani Technion

Inherent limitations on DAP TMs 14

Complexity Bounds for STMs: What are the implications? Adapt your expectations

What STM guarantees (e.g. consistency) What you measure:

Best case, average case Special workloads

Page 15: Inherent limitations on DAP TMs 1 Inherent Limitations on Disjoint-Access Parallel Transactional Memory Hagit Attiya, Eshcar Hillel, Alessia Milani Technion

Inherent limitations on DAP TMs 15

Weaker Liveness Condition

If a transaction runs alone from a quiescent configuration then it terminates successfully

Weakly progressive

blocking implementation[Guerraoui & Kapalka]

OUR RESULTSSTILL HOLD

Page 16: Inherent limitations on DAP TMs 1 Inherent Limitations on Disjoint-Access Parallel Transactional Memory Hagit Attiya, Eshcar Hillel, Alessia Milani Technion

Inherent limitations on DAP TMs 16

Serializability Snapshot Isolation Virtual world consistency

Causal consistency Causal serializability

16

Weaker Consistency Conditions

OUR RESULTSSTILL HOLD

OPEN PROBLEM

Page 17: Inherent limitations on DAP TMs 1 Inherent Limitations on Disjoint-Access Parallel Transactional Memory Hagit Attiya, Eshcar Hillel, Alessia Milani Technion

Inherent limitations on DAP TMs 17

Thank you![paper in SPAA 09]