Dividing Transactional Memories by Zero Aleksandar Dragojevi - - PowerPoint PPT Presentation

dividing transactional memories by zero
SMART_READER_LITE
LIVE PREVIEW

Dividing Transactional Memories by Zero Aleksandar Dragojevi - - PowerPoint PPT Presentation

Dividing Transactional Memories by Zero Aleksandar Dragojevi Rachid Guerraoui Micha Kapaka EPFL, Switzerland Transact 2008 Micha Kapaka (EPFL) STMBench7 Transact 2008 1 / 20 A TM Story TM implementations evaluated with skip


slide-1
SLIDE 1

Dividing Transactional Memories by Zero

Aleksandar Dragojević Rachid Guerraoui Michał Kapałka

EPFL, Switzerland

Transact 2008

Michał Kapałka (EPFL) STMBench7 Transact 2008 1 / 20

slide-2
SLIDE 2

A TM Story

TM implementations evaluated with skip lists, hash tables, …

Michał Kapałka (EPFL) STMBench7 Transact 2008 2 / 20

slide-3
SLIDE 3

A TM Story

TM implementations evaluated with skip lists, hash tables, …

Michał Kapałka (EPFL) STMBench7 Transact 2008 2 / 20

slide-4
SLIDE 4

A TM Story

STMBench7

a benchmark for all TMs

Michał Kapałka (EPFL) STMBench7 Transact 2008 3 / 20

slide-5
SLIDE 5

A TM Story

. . STMBench7 . DSTM2 . exception: OutOfMemory . RSTM . Segmentation fault . TL2, TinySTM

Michał Kapałka (EPFL) STMBench7 Transact 2008 4 / 20

slide-6
SLIDE 6

A TM Story

. . STMBench7 . DSTM2 . exception: OutOfMemory . RSTM . Segmentation fault . TL2, TinySTM

Michał Kapałka (EPFL) STMBench7 Transact 2008 4 / 20

slide-7
SLIDE 7

A TM Story

. . STMBench7 . DSTM2 . exception: OutOfMemory . RSTM . Segmentation fault . TL2, TinySTM

Michał Kapałka (EPFL) STMBench7 Transact 2008 4 / 20

slide-8
SLIDE 8

A TM Story

. . STMBench7 . DSTM2 . exception: OutOfMemory . RSTM . Segmentation fault . TL2, TinySTM

Michał Kapałka (EPFL) STMBench7 Transact 2008 4 / 20

slide-9
SLIDE 9

A TM Story

. . STMBench7 . DSTM2 . exception: OutOfMemory . RSTM . Segmentation fault . TL2, TinySTM

Michał Kapałka (EPFL) STMBench7 Transact 2008 4 / 20

slide-10
SLIDE 10

A TM Story

. . STMBench7 . DSTM2 . exception: OutOfMemory . RSTM . Segmentation fault . TL2, TinySTM

Michał Kapałka (EPFL) STMBench7 Transact 2008 4 / 20

slide-11
SLIDE 11

?

Michał Kapałka (EPFL) STMBench7 Transact 2008 5 / 20

slide-12
SLIDE 12

The Goal of STMBench7

Test

performance

and usability

Michał Kapałka (EPFL) STMBench7 Transact 2008 6 / 20

slide-13
SLIDE 13

My Goal Today

Show that STMBench7 is a

valuable tool

for measuring performance & usability of TMs

Michał Kapałka (EPFL) STMBench7 Transact 2008 7 / 20

slide-14
SLIDE 14

Outline

1 STMBench7 2 Performance results examples

Michał Kapałka (EPFL) STMBench7 Transact 2008 8 / 20

slide-15
SLIDE 15

The STMBench7 Benchmark for TMs

Real-world workload (CAD/CAM/…) Large, complex & dynamic structure Various-length

  • perations

. . Thread 1 . Thread 2 . Thread 3 . Data structure .

  • p1 .
  • p2 .
  • p3

.

Latency, throughput

Michał Kapałka (EPFL) STMBench7 Transact 2008 9 / 20

slide-16
SLIDE 16

STMBench7 Main Tree

. . Module . Manual . CA . CA . CA . CA . … . … . … . BA . BA . … . 7 levels . Complex Assemblies (CA) . Base Assemblies (BA)

Michał Kapałka (EPFL) STMBench7 Transact 2008 10 / 20

slide-17
SLIDE 17

STMBench7 Design Library

. . BA . … . BA . CP . CP . … . CP . Doc . AP Graph . … . … . Base Assemblies (BA) . Composite Parts (CP) . Atomic Parts (AP) . + indexes

Michał Kapałka (EPFL) STMBench7 Transact 2008 11 / 20

slide-18
SLIDE 18

STMBench7 Features

Large data structure

unforgiving for large per-object overheads

Short and long operations

“explode” non-linear algorithms

Complex access patterns

test policies, not only raw performance

Complex objects, inheritance

OO features check

Use of standard libraries

usability test

Michał Kapałka (EPFL) STMBench7 Transact 2008 12 / 20

slide-19
SLIDE 19

Outline

1 STMBench7 2 Performance results examples

Michał Kapałka (EPFL) STMBench7 Transact 2008 13 / 20

slide-20
SLIDE 20

Lock-Based vs. Obstruction-Free

Urban legend:

  • bstruction-free TMs inherently slow

lock-based TMs much faster

Michał Kapałka (EPFL) STMBench7 Transact 2008 14 / 20

slide-21
SLIDE 21

Lock-Based vs. Obstruction-Free

.

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. kTx / s . Threads . 1 . 4 . 8 . 16 . 24 . 1 . 2 . 3 . 4 . TL2 . RSTM . TinySTM .

4×2-core Opteron

Michał Kapałka (EPFL) STMBench7 Transact 2008 15 / 20

slide-22
SLIDE 22

Contention Management

Contention management and Conflict detection mechanism How are those connected?

Michał Kapałka (EPFL) STMBench7 Transact 2008 16 / 20

slide-23
SLIDE 23

Contention Management

.

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. kTx / s . Threads . 1 . 4 . 8 . 16 . 24 . 1 . 2 . 3 . 4 . eager Greedy . eager Polka . lazy Polka . lazy Greedy

Michał Kapałka (EPFL) STMBench7 Transact 2008 17 / 20

slide-24
SLIDE 24

Contention Management

.

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. kTx / s . Threads . 1 . 4 . 8 . 16 . 24 . 1 . 2 . 3 . 4 . eager Greedy . eager Polka . lazy Polka . lazy Greedy

Michał Kapałka (EPFL) STMBench7 Transact 2008 17 / 20

slide-25
SLIDE 25

Performance: General Observation

Policy

>

Per-access overhead

Michał Kapałka (EPFL) STMBench7 Transact 2008 18 / 20

slide-26
SLIDE 26

Summary

STMBench7

a benchmark for all TMs Evaluate performance & usability in a (possibly) realistic setting (and discover bugs…)

Michał Kapałka (EPFL) STMBench7 Transact 2008 19 / 20

slide-27
SLIDE 27

STMBench7

lpd.epfl.ch/site/research/tmeval

free (BSD-style license)

Michał Kapałka (EPFL) STMBench7 Transact 2008 20 / 20