epfl trigonakis babak falsafi, rachid guerraoui, javier ...dahiya/col862/unlockingenergy.pdf ·...

54
Babak Falsafi, Rachid Guerraoui, Javier Picorel, and Vasileios Trigonakis EPFL

Upload: doankhue

Post on 20-Jul-2018

220 views

Category:

Documents


0 download

TRANSCRIPT

Babak Falsafi, Rachid Guerraoui, Javier Picorel, and Vasileios Trigonakis

EPFL

2. ∝

••

•••

••••

••

••

••

••

••

••

••

••

••

••

••

••

••

••

••••••• …••

••

••

•••

••

••

••

••

•••

••

••

••

••

••

••

•••

•••

••

•••

•••

••

•••

•••

••

••

Discussion: How to optimize spinning? monitor/mwait

••

•••

•••

••

•••

•••

••

••

••

••

••

••

••

•• →

• →• → →

•• →

• →

••

••

••

•••

••

••

••

•••

••

••

••

••••

••

C1 C2 C3 C4 C5 C6 C7 C8 C10

Socket 1

C1 C2 C3 C4 C5 C6 C7 C8 C9

Socket 2

inter socket (slow path)

intra socket (fast path)

••••

C9

C10

••••

••••

1.2.3.

••

••••

••

••

Consumes lesser power than local spinning. wakeup latency(mwait) = 1600 cycles vs wakeup latency(local spinning) = 280 cycles

1.2.

••

Turnaround time (7000)

Busy waiting

Coherence(384)

• ⇒

••

Lock

Critical Section(1000 cycles)

Unlock

T1(C) T2 T3 T4T5T6T7T8

T5 T2 T3 T4T1(C)T6T7T8

Insert into Queue

Critical Section(1000 cycles)

Unlock

T1(W/C) T2 T3 T4T5T6T7T8

T5 T2 T3 T4T1(W/C)T6T7T8

Wait for my turn

Number of threads in MySQL, SQLite > Number of coreTicket is better

Ticket is better

Ticket is worse

•••

… … … ……… …

… …

••

••

••

•••

••