Semantics-preserving Sharing Actors Mohsen Lesani {1,2} Antonio Lain 2 University of California, Los...

16
Semantics-preserving Sharing Actors Mohsen Lesani {1,2} Antonio Lain 2 University of California, Los Angeles 1 HP Labs, Palo Alto 2

Transcript of Semantics-preserving Sharing Actors Mohsen Lesani {1,2} Antonio Lain 2 University of California, Los...

Page 1: Semantics-preserving Sharing Actors Mohsen Lesani {1,2} Antonio Lain 2 University of California, Los Angeles 1 HP Labs, Palo Alto 2.

Semantics-preserving Sharing Actors

Mohsen Lesani{1,2} Antonio Lain2 University of California, Los Angeles1 HP Labs, Palo Alto2

Page 2: Semantics-preserving Sharing Actors Mohsen Lesani {1,2} Antonio Lain 2 University of California, Los Angeles 1 HP Labs, Palo Alto 2.

2Sharing Actors• Semantics• Equivalence to Pure Actors• Implementation

• Testing Tool

Page 3: Semantics-preserving Sharing Actors Mohsen Lesani {1,2} Antonio Lain 2 University of California, Los Angeles 1 HP Labs, Palo Alto 2.

3Actors• Actors [Hewitt][Agha] don’t share state.

“Things in the world don't share data.” [Armstrong]– Race-freedom– Fault-isolation– Location-transparency

Page 4: Semantics-preserving Sharing Actors Mohsen Lesani {1,2} Antonio Lain 2 University of California, Los Angeles 1 HP Labs, Palo Alto 2.

4Sharing• Limited forms of sharing

– Efficiency– Programmability

• What are accesses?– Write-Write

Multiple-Writers data– Write-Read, Read-Read

Single-Writer, Multiple-Readers data (SWMR data)

Page 5: Semantics-preserving Sharing Actors Mohsen Lesani {1,2} Antonio Lain 2 University of California, Los Angeles 1 HP Labs, Palo Alto 2.

5SWMR Data• Social Network

Each profile is read by its friend profiles

Page 6: Semantics-preserving Sharing Actors Mohsen Lesani {1,2} Antonio Lain 2 University of California, Los Angeles 1 HP Labs, Palo Alto 2.

6SWMR Data with Pure Actors

Full Replication

StateState State

State

State

State

Delegate Actor

Time Update at each replicaSpace

Time Loss of parallelism by serializing access

Page 7: Semantics-preserving Sharing Actors Mohsen Lesani {1,2} Antonio Lain 2 University of California, Los Angeles 1 HP Labs, Palo Alto 2.

7Sharing Actors Semantics

Actors + SWMR State• Atomicity• Isolation• Fairness

StateUpdates

Updates

Updates

State

State

State

State2State2

Page 8: Semantics-preserving Sharing Actors Mohsen Lesani {1,2} Antonio Lain 2 University of California, Los Angeles 1 HP Labs, Palo Alto 2.

8Interaction EquivalenceAre two actor systems equivalent?

Equivalence of the set of possible sequences of inputs and outputs

Actor Semantics Sharing Actors SemanticsEquivalence Proof

Page 9: Semantics-preserving Sharing Actors Mohsen Lesani {1,2} Antonio Lain 2 University of California, Los Angeles 1 HP Labs, Palo Alto 2.

9

Translation

Translation and Equivalence

Sharing Actors Semantics• Atomicity • Isolation• Fairness

StateUpdates

Updates

Updates

State State

State

State

Actors Semantics• Fairness

State

State

State

Page 10: Semantics-preserving Sharing Actors Mohsen Lesani {1,2} Antonio Lain 2 University of California, Los Angeles 1 HP Labs, Palo Alto 2.

10

Translation

Translation and Equivalence

StateUpdates

Updates

Updates

State State

State

State

State

State

State

State2State2 State2State2,v

State2

v

v

v+1

v+1v=v

?

Page 11: Semantics-preserving Sharing Actors Mohsen Lesani {1,2} Antonio Lain 2 University of California, Los Angeles 1 HP Labs, Palo Alto 2.

11Sharing Actors Implementation

State

State

Direct (message-based) implementation of the semantics is inefficient.The optimized implementation benefits from sharing data:

Page 12: Semantics-preserving Sharing Actors Mohsen Lesani {1,2} Antonio Lain 2 University of California, Los Angeles 1 HP Labs, Palo Alto 2.

12Implementation

State

State

Base Object

Head

Handle

Isolation

Base Object

HandleFairness

Page 13: Semantics-preserving Sharing Actors Mohsen Lesani {1,2} Antonio Lain 2 University of California, Los Angeles 1 HP Labs, Palo Alto 2.

13ConclusionSemantics-preserving Sharing Actors

Sharing actors semanticsTranslation of sharing programs to pure programs and proof of their

interaction equivalence.Implementation

Page 14: Semantics-preserving Sharing Actors Mohsen Lesani {1,2} Antonio Lain 2 University of California, Los Angeles 1 HP Labs, Palo Alto 2.

14Thanks for your attendance• Questions?

Page 15: Semantics-preserving Sharing Actors Mohsen Lesani {1,2} Antonio Lain 2 University of California, Los Angeles 1 HP Labs, Palo Alto 2.

15Testing Tool

Optimized Implementation

Testing Tool

Sharing Actors Semantics

Reference Implementation

Page 16: Semantics-preserving Sharing Actors Mohsen Lesani {1,2} Antonio Lain 2 University of California, Los Angeles 1 HP Labs, Palo Alto 2.

16Testing Tool

Play and log with the optimized implementation

(a2,n1),v1

Writer

Reader

Reader

(a2,n3),v2

Deterministic replay with the direct implementation of the semantics(a2,n1),v1

Writer

Reader

Reader

(a2,n3),v2

Check equality of configurations