• Tidak ada hasil yang ditemukan

affiliates04_tltm.ppt 182KB Jun 23 2011 12:32:50 PM

N/A
N/A
Protected

Academic year: 2017

Membagikan "affiliates04_tltm.ppt 182KB Jun 23 2011 12:32:50 PM"

Copied!
24
0
0

Teks penuh

(1)

Thread-Level Transactional

Memory

Decoupling Interface and

ImplementationUW Computer Architecture

Affiliates Conference Kevin Moore

(2)

October 21, 2004

Thread-Level Transactio nal Memory

2

Transactional Memory

 Atomic and isolated execution

 Replace locks for critical sections

 No lock granularity problem

 Software Error Recovery

 Allow programmers to abort/rollback

transactions when errors are detected

 Convenient interface for exception

(3)

October 21, 2004

Thread-Level Transactio nal Memory

3

Why Haven’t You Built It?

 ISA Change

 No immediate benefit  Complexity

 No solution for large transactions  No solution for software error

(4)

October 21, 2004

Thread-Level Transactio nal Memory

4

The Interface Matters

 Many systems implement the same ISA

 Support multiple design points

 Survive technology changes

 Programmability is the key motivation

for transactional memory

 Interface challenge

 Modern processors support small (few

memory operations) easily

 Unlimited transactions are more convenient

(5)

October 21, 2004

Thread-Level Transactio nal Memory

5

Virtualize Transactional

Memory

 Decouple interface and

implementation

 Allow arbitrary size transactions  Don’t require unlimited buffering

 Flexible implementation

 Multiple cost/performance options

 Support software error recovery

(6)

October 21, 2004

Thread-Level Transactio nal Memory

6

Overview

 Motivation  Background

 TLTM Interface

(7)

October 21, 2004

Thread-Level Transactio nal Memory

7

Prior Transactional

Memory Systems

 Transactional Memory

 Transactional Memory Coherence

and Consistency

 Oklahoma Update

 Transactional Lock Removal

(8)

October 21, 2004

Thread-Level Transactio nal Memory

8

Transactional Memory

 Herlihy and Moss, ISCA 1993

 Replaced short critical sections

with atomic transactions

 More efficient than locks

 Implementation based on cache

(9)

October 21, 2004

Thread-Level Transactio nal Memory

9

Herlihy and Moss, ISCA

1993

 Transaction cache

 Stores all data

accessed by transactions

 2 copies of each

updated cache line

 Fully associative

 Acts as a victim cache

 Long Locks

 Processors are allowed

to refuse coherence requests

Cache Transaction Cache

CPU

(10)

October 21, 2004

Thread-Level Transactio nal Memory

10

Transactional Memory

Coherence and

Consistency

 TCC combines coherence and

transaction support

 All memory requests are part of

some transaction

(11)

October 21, 2004

Thread-Level Transactio nal Memory

11

TCC

 Each processor executes a speculative

(optimistic) transaction

 Commits are serial

 Broadcasts addresses of all updates in the

transaction

 Supports long-running (large) transactions

 Must grab (and hold) commit permission first

(12)

October 21, 2004

Thread-Level Transactio nal Memory

12 Logically

Shared Write buffer ~4

kB, Fully-Associative

On-Chip

Interconnect Broadcast-Based

(13)

October 21, 2004

Thread-Level Transactio nal Memory

13

Limits of Prior Proposals

 No separation between

implementation and interface

 No concurrent execution of large

transactions

 No software error recovery

(14)

October 21, 2004

Thread-Level Transactio nal Memory

14

Thread-Level Transactional

Memory (TLTM)

 Decouple transactional interface

and implementation

 No limit on transaction size or

content

 Break the dependence on caching

(15)

October 21, 2004

Thread-Level Transactio nal Memory

15

TLTM API

 Transactions

 Specified by begin and commit operations  All memory operations between begin and

commit are part of the transaction

 Transactions end in a commit or an abort  Abort/Recovery

 Can be triggered by software or hardware  Control may be passed to software abort

handler

 If software handler is called, a before-image log

(16)

October 21, 2004

Thread-Level Transactio nal Memory

16

TLTM Guarantee

1) Execute the transaction

atomically (and commit) or,

2) Allow a software abort handler to

run before any updates are exposed

(17)

October 21, 2004

Thread-Level Transactio nal Memory

17

Transactional Memory

Requirements

 Maintain multiple versions of

updated objects

(18)

October 21, 2004

Thread-Level Transactio nal Memory

18

Thread-Level Log

Stack

Log

Thread 0

Stack

Log

Thread n

Code

Data

Heap

(19)

October 21, 2004

Thread-Level Transactio nal Memory

19

Log-Based Recovery

 Undo log

 Before image log stored in virtual address space of user program

 Separate log for each thread

 Aborts can be handled in software  Replays log entries in LIFO order

 Breaks dependence on cache for

(20)

October 21, 2004

Thread-Level Transactio nal Memory

20

Speculative Transactions

 ULTM does not require logging  Processors can still execute

transactions speculatively

 Non-speculative transactions will

(21)

October 21, 2004

Thread-Level Transactio nal Memory

21

Transaction Read Set Size

0

Read Set Size (in 64-Byte Lines) PDF

(22)

October 21, 2004

Thread-Level Transactio nal Memory

22

Transaction Write Set Size

0

Log Size PDF

(23)

October 21, 2004

Thread-Level Transactio nal Memory

23

Tracking Transaction State

 Use conservative estimate of

transaction data sets

 Allows bounded state

 Allows a trade-off between space

overhead and performance

(24)

October 21, 2004

Thread-Level Transactio nal Memory

24

Advantages of TLTM

 Flexibility for programmers

 No hardware-imposed limits on transaction

content

 Allows conservative synchronization

 Supports recovery for all transactions

 Flexibility for memory system designers

 No minimum size or associativity requirement

for caches, reorder buffers or store queues

Referensi

Dokumen terkait

Key words: Long memory (Long range dependence), Fractional Brownian motion, Fractional Ornstein-Uhlenbeck process, Exponential process, Burkholder-Davis-Gundy inequalities..

User Coverage v.s Cell Density (for 400x400 m cell size, Power Control, Random Relayer Selection, Semi-Smart Channel Selection).. Simulation

the tool mediates human labor activity and the semiotic notion of how sign systems mediate human social processes and thinking. • His point is that instruments are not only used

– Random Access Memory (RAM): memory on the motherboard that is short term; where data, information, and program instructions are stored temporarily on a RAM chip or a set of

o Director and Lecturer, Computer Forensics and e- Discovery, Humanities Advanced Technology and Information Institute, University of Glasgow.. o

– Assign timestamp to coherence transactions at sender – Broadcast transactions over unordered network ASAP – Transaction carry timestamp (2 bits). – Processors process

 We obtained the ground level energy and angular momentum for different values of Coulomb correlation and magnetic field.  Our results show that in absence of magnetic field, or

mechanical devices that process the data; refers to the computer as well as peripheral devices..