Top Banner
Efficient Hardware-Assisted Out-of-Place Update for Non-Volatile Memory Miao Cai Chance Coats Jian Huang Systems Platform Research Group
96

Systems Platform Research Group - NVMW 2021

Apr 05, 2022

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Systems Platform Research Group - NVMW 2021

Efficient Hardware-Assisted

Out-of-Place Update for Non-Volatile Memory

Miao Cai † Chance Coats Jian Huang

Systems Platform Research Group

Page 2: Systems Platform Research Group - NVMW 2021

2

Non-Volatile Memory is a Revolutionary Technology

Close-to-DRAM Performance

Page 3: Systems Platform Research Group - NVMW 2021

2

Non-Volatile Memory is a Revolutionary Technology

Close-to-DRAM Performance Data Durability

Page 4: Systems Platform Research Group - NVMW 2021

2

Non-Volatile Memory is a Revolutionary Technology

Close-to-DRAM Performance Data Durability Byte Addressability

Page 5: Systems Platform Research Group - NVMW 2021

2

Non-Volatile Memory is a Revolutionary Technology

New and emerging NVMs offer promising properties and become popular

Close-to-DRAM Performance Data Durability Byte Addressability

Page 6: Systems Platform Research Group - NVMW 2021

3

Memory Persistency Challenge: A Well-Known Problem

Volatile Processor Cache

Page 7: Systems Platform Research Group - NVMW 2021

3

Memory Persistency Challenge: A Well-Known Problem

Out-of-Order ExecutionVolatile Processor Cache

Page 8: Systems Platform Research Group - NVMW 2021

3

Memory Persistency Challenge: A Well-Known Problem

Performance vs. PersistencyOut-of-Order ExecutionVolatile Processor Cache

Page 9: Systems Platform Research Group - NVMW 2021

3

Memory Persistency Challenge: A Well-Known Problem

Ensuring memory persistency with commodity architecture is challenging!

Performance vs. PersistencyOut-of-Order ExecutionVolatile Processor Cache

Page 10: Systems Platform Research Group - NVMW 2021

4

State-of-the-Art Approach: Redo/Undo Logging

Page 11: Systems Platform Research Group - NVMW 2021

4

State-of-the-Art Approach: Redo/Undo Logging

Undo Logging

Page 12: Systems Platform Research Group - NVMW 2021

4

State-of-the-Art Approach: Redo/Undo Logging

Undo Logging

Redo Logging

Page 13: Systems Platform Research Group - NVMW 2021

4

State-of-the-Art Approach: Redo/Undo Logging

Undo Logging

Redo Logging

Undo/Redo logging causes DOUBLE WRITES on the critical path.

Page 14: Systems Platform Research Group - NVMW 2021

5

State-of-the-Art Approach: Shadow Paging

Page 15: Systems Platform Research Group - NVMW 2021

Page Copy

5

State-of-the-Art Approach: Shadow Paging

Page 16: Systems Platform Research Group - NVMW 2021

Page Copy

5

State-of-the-Art Approach: Shadow Paging

Page 17: Systems Platform Research Group - NVMW 2021

Page Copy

5

State-of-the-Art Approach: Shadow Paging

Page 18: Systems Platform Research Group - NVMW 2021

Page Copy

5

State-of-the-Art Approach: Shadow Paging

Page 19: Systems Platform Research Group - NVMW 2021

Page Copy

5

State-of-the-Art Approach: Shadow Paging

Optimized shadow paging still suffers from FREQUENT DATA FLUSHES.

Page 20: Systems Platform Research Group - NVMW 2021

6

State-of-the-Art Approach: Log-structured NVM

Page 21: Systems Platform Research Group - NVMW 2021

6

State-of-the-Art Approach: Log-structured NVM

Log Index

Page 22: Systems Platform Research Group - NVMW 2021

6

State-of-the-Art Approach: Log-structured NVM

Software-based LSNVM suffers from LONG ACCESS LATENCY.

Log Index

Page 23: Systems Platform Research Group - NVMW 2021

7

A Summary of State-of-the-Art Approaches

Logging Shadow Paging Log-structured NVM

Page 24: Systems Platform Research Group - NVMW 2021

7

A Summary of State-of-the-Art Approaches

Logging Shadow Paging Log-structured NVM

Memory persistency overheads: double writes, frequent flushes, long critical-path latency

Page 25: Systems Platform Research Group - NVMW 2021

8

Our Approach: Hardware-assisted Out-Of-Place (HOOP) Update

Page 26: Systems Platform Research Group - NVMW 2021

8

Our Approach: Hardware-assisted Out-Of-Place (HOOP) Update

Reduced write traffic with data coalescing and packing

Page 27: Systems Platform Research Group - NVMW 2021

8

Our Approach: Hardware-assisted Out-Of-Place (HOOP) Update

Reduced write traffic with data coalescing and packing

No requirement on persistence ordering

+

Page 28: Systems Platform Research Group - NVMW 2021

8

Our Approach: Hardware-assisted Out-Of-Place (HOOP) Update

Reduced write traffic with data coalescing and packing

No requirement on persistence ordering

Transparent support of atomic data durability

+

+

Page 29: Systems Platform Research Group - NVMW 2021

9

Lightweight

Indirection Layer

Challenges of Supporting Out-Of-Place Update

Page 30: Systems Platform Research Group - NVMW 2021

9

Lightweight

Indirection Layer

Challenges of Supporting Out-Of-Place Update

Limited Resource in

Memory Controller

Page 31: Systems Platform Research Group - NVMW 2021

9

Lightweight

Indirection Layer

Challenges of Supporting Out-Of-Place Update

Limited Resource in

Memory ControllerEfficient Garbage

Collection

Page 32: Systems Platform Research Group - NVMW 2021

10

Address Remapping for Supporting Out-of-Place Update

Processor Cache

Memory

Controller

NVM

Page 33: Systems Platform Research Group - NVMW 2021

10

Address Remapping for Supporting Out-of-Place Update

Processor Cache

Memory

Controller

Home Region OOP RegionNVM

Page 34: Systems Platform Research Group - NVMW 2021

10

Address Remapping for Supporting Out-of-Place Update

Processor Cache

Memory

Controller

Home Region OOP RegionNVM

store

Page 35: Systems Platform Research Group - NVMW 2021

10

Address Remapping for Supporting Out-of-Place Update

Processor Cache

Memory

Controller

Home Region OOP RegionNVM

store

Page 36: Systems Platform Research Group - NVMW 2021

10

Address Remapping for Supporting Out-of-Place Update

Processor Cache

Memory

Controller

Home Region OOP RegionNVM

storeload

Page 37: Systems Platform Research Group - NVMW 2021

10

Address Remapping for Supporting Out-of-Place Update

Processor Cache

Memory

Controller

Home Region OOP RegionNVM

storeload

Page 38: Systems Platform Research Group - NVMW 2021

10

Address Remapping for Supporting Out-of-Place Update

Processor Cache

Memory

Controller

Home Region OOP RegionNVM

storeload

Page 39: Systems Platform Research Group - NVMW 2021

10

Address Remapping for Supporting Out-of-Place Update

Processor Cache

Memory

Controller

Home Region OOP RegionNVM

Mapping Table

storeload

Page 40: Systems Platform Research Group - NVMW 2021

10

Address Remapping for Supporting Out-of-Place Update

Processor Cache

Memory

Controller

Home Region OOP RegionNVM

Mapping Table

storeload

physical-to-physical

address mapping

Page 41: Systems Platform Research Group - NVMW 2021

10

Address Remapping for Supporting Out-of-Place Update

Processor Cache

Memory

Controller

Home Region OOP RegionNVM

Mapping Table

storeload Insert mapping entry

Upon a write to OOP region

Page 42: Systems Platform Research Group - NVMW 2021

10

Address Remapping for Supporting Out-of-Place Update

Processor Cache

Memory

Controller

Home Region OOP RegionNVM

Mapping Table

storeload Insert mapping entry

Upon a write to OOP region

Page 43: Systems Platform Research Group - NVMW 2021

10

Address Remapping for Supporting Out-of-Place Update

Processor Cache

Memory

Controller

Home Region OOP RegionNVM

Mapping Table

storeload Insert mapping entry

Upon a write to OOP region

Delete mapping entry

Data migration from OOP to home

Upon a read from OOP region

Page 44: Systems Platform Research Group - NVMW 2021

10

Address Remapping for Supporting Out-of-Place Update

Processor Cache

Memory

Controller

Home Region OOP RegionNVM

Mapping Table

storeload Insert mapping entry

Upon a write to OOP region

Delete mapping entry

Data migration from OOP to home

Upon a read from OOP region

GC

Page 45: Systems Platform Research Group - NVMW 2021

11

Processor Cache

Memory

Controller

Home Region OOP RegionNVM

Mapping Table

storeload

Data Packing in the Memory Controller for Improved Performance

OOP Data Buffer

Many applications

update data at a

fine granularity

Page 46: Systems Platform Research Group - NVMW 2021

11

Processor Cache

Memory

Controller

Home Region OOP RegionNVM

Mapping Table

storeload

Data Packing in the Memory Controller for Improved Performance

OOP Data Buffer

Page 47: Systems Platform Research Group - NVMW 2021

11

Processor Cache

Memory

Controller

Home Region OOP RegionNVM

Mapping Table

storeload

Data Packing in the Memory Controller for Improved Performance

OOP Data Buffer

Home

address

Page 48: Systems Platform Research Group - NVMW 2021

11

Processor Cache

Memory

Controller

Home Region OOP RegionNVM

Mapping Table

storeload

Data Packing in the Memory Controller for Improved Performance

OOP Data Buffer

OOP BlockHeadOOP BlockHead …

Page 49: Systems Platform Research Group - NVMW 2021

12

Processor Cache

Memory

Controller

Home Region OOP RegionNVM

Mapping Table

storeload

OOP Data Buffer

Ensuring Persistence Ordering in the Memory Controller

Page 50: Systems Platform Research Group - NVMW 2021

12

Processor Cache

Memory

Controller

Home Region OOP RegionNVM

Mapping Table

storeload

OOP Data Buffer

Ensuring Persistence Ordering in the Memory Controller

Done the data packing for a memory slice

Upon the end of transaction (e.g., Tx_end)

Page 51: Systems Platform Research Group - NVMW 2021

12

Processor Cache

Memory

Controller

Home Region OOP RegionNVM

Mapping Table

storeload

OOP Data Buffer

Ensuring Persistence Ordering in the Memory Controller

Page 52: Systems Platform Research Group - NVMW 2021

13

Processor Cache

Memory

Controller

Home Region OOP RegionNVM

Mapping Table

storeload

OOP Data Buffer

Efficient Garbage Collection for Improved Memory Utilization

Page 53: Systems Platform Research Group - NVMW 2021

13

Processor Cache

Memory

Controller

Home Region OOP RegionNVM

Mapping Table

storeload

OOP Data Buffer

Efficient Garbage Collection for Improved Memory Utilization

GC

Page 54: Systems Platform Research Group - NVMW 2021

13

Processor Cache

Memory

Controller

Home Region OOP RegionNVM

Mapping Table

storeload

OOP Data Buffer

Efficient Garbage Collection for Improved Memory Utilization

GC

OOP BlockHeadOOP BlockHead …

Page 55: Systems Platform Research Group - NVMW 2021

13

Processor Cache

Memory

Controller

Home Region OOP RegionNVM

Mapping Table

storeload

OOP Data Buffer

Efficient Garbage Collection for Improved Memory Utilization

GC

OOP BlockHeadOOP BlockHead …

Linked Memory Slices

Page 56: Systems Platform Research Group - NVMW 2021

13

Processor Cache

Memory

Controller

Home Region OOP RegionNVM

Mapping Table

storeload

OOP Data Buffer

Efficient Garbage Collection for Improved Memory Utilization

GC

Load stale data

during GC

Page 57: Systems Platform Research Group - NVMW 2021

13

Processor Cache

Memory

Controller

Home Region OOP RegionNVM

Mapping Table

storeload

OOP Data Buffer

Efficient Garbage Collection for Improved Memory Utilization

GC

Load stale data

during GCEviction Buffer

Page 58: Systems Platform Research Group - NVMW 2021

14

Processor Cache

Memory

Controller

Home Region OOP RegionNVM

Mapping Table

storeload

OOP Data Buffer

OOP BlockHeadOOP BlockHead …

Handling Crash Consistency Upon Failures

Eviction Buffer

Page 59: Systems Platform Research Group - NVMW 2021

14

Processor Cache

Memory

Controller

Home Region OOP RegionNVM

Mapping Table

storeload

OOP Data Buffer

OOP BlockHeadOOP BlockHead …

Handling Crash Consistency Upon Failures

Eviction Buffer

Page 60: Systems Platform Research Group - NVMW 2021

14

Processor Cache

Memory

Controller

Home Region OOP RegionNVM

Mapping Table

storeload

OOP Data Buffer

OOP BlockHeadOOP BlockHead …

Handling Crash Consistency Upon Failures

Eviction Buffer

Page 61: Systems Platform Research Group - NVMW 2021

15

Put It All Together

Last-Level Cache

Memory

Controller

Home Region OOP RegionNVM

Mapping Table OOP Data Buffer

Eviction Buffer

L1 Cache L1 Cache

core core

Page 62: Systems Platform Research Group - NVMW 2021

15

Put It All Together

Last-Level Cache

Memory

Controller

Home Region OOP RegionNVM

Mapping Table

load

OOP Data Buffer

Eviction Buffer

L1 Cache L1 Cache

core core

Page 63: Systems Platform Research Group - NVMW 2021

15

Put It All Together

Last-Level Cache

Memory

Controller

Home Region OOP RegionNVM

Mapping Table

load

OOP Data Buffer

Eviction Buffer

L1 Cache L1 Cache

core core

Page 64: Systems Platform Research Group - NVMW 2021

15

Put It All Together

Last-Level Cache

Memory

Controller

Home Region OOP RegionNVM

Mapping Table

load

OOP Data Buffer

Eviction Buffer

L1 Cache L1 Cache

core core

miss

Page 65: Systems Platform Research Group - NVMW 2021

15

Put It All Together

Last-Level Cache

Memory

Controller

Home Region OOP RegionNVM

Mapping Table

load

OOP Data Buffer

Eviction Buffer

L1 Cache L1 Cache

core core

miss

Page 66: Systems Platform Research Group - NVMW 2021

15

Put It All Together

Last-Level Cache

Memory

Controller

Home Region OOP RegionNVM

Mapping Table

storeload

OOP Data Buffer

Eviction Buffer

L1 Cache L1 Cache

core core

miss

Page 67: Systems Platform Research Group - NVMW 2021

15

Put It All Together

Last-Level Cache

Memory

Controller

Home Region OOP RegionNVM

Mapping Table

storeload

OOP Data Buffer

Eviction Buffer

L1 Cache L1 Cache

core core

miss

miss

Page 68: Systems Platform Research Group - NVMW 2021

15

Put It All Together

Last-Level Cache

Memory

Controller

Home Region OOP RegionNVM

Mapping Table

storeload

OOP Data Buffer

Eviction Buffer

L1 Cache L1 Cache

core core

miss

miss

Page 69: Systems Platform Research Group - NVMW 2021

15

Put It All Together

Last-Level Cache

Memory

Controller

Home Region OOP RegionNVM

Mapping Table

storeload

OOP Data Buffer

Eviction Buffer

L1 Cache L1 Cache

core core

miss

miss

Page 70: Systems Platform Research Group - NVMW 2021

16

HOOP

Implementation

Evaluation

Benchmarks

McSimA+: OoO cores, 2.5GHz,

32KB L1, 256KB L2, 2MB LLC Processor Simulator

NVM Simulator Read/Write = 50/150ns, 512GB

Synthetic Workloads

Real-world Workloads

Vector, HashMap, Queue, RB-Tree, B- Tree

YCSB, TPCC

Page 71: Systems Platform Research Group - NVMW 2021

17

Improving Transaction Throughput with HOOP

0

0.5

1

1.5

2

2.5

Vector Queue RBTree Btree HashMap YCSB TPCC

Norm

aliz

ed S

pee

dup

Optimized Redo Optimized Undo Optimized Shadow Paging

Log-Structured NVM Logless Atomic Durability HOOP

Ideal

Page 72: Systems Platform Research Group - NVMW 2021

17

Improving Transaction Throughput with HOOP

0

0.5

1

1.5

2

2.5

Vector Queue RBTree Btree HashMap YCSB TPCC

Norm

aliz

ed S

pee

dup

Optimized Redo Optimized Undo Optimized Shadow Paging

Log-Structured NVM Logless Atomic Durability HOOP

Ideal

Page 73: Systems Platform Research Group - NVMW 2021

17

Improving Transaction Throughput with HOOP

0

0.5

1

1.5

2

2.5

Vector Queue RBTree Btree HashMap YCSB TPCC

Norm

aliz

ed S

pee

dup

Optimized Redo Optimized Undo Optimized Shadow Paging

Log-Structured NVM Logless Atomic Durability HOOP

Ideal

Page 74: Systems Platform Research Group - NVMW 2021

17

Improving Transaction Throughput with HOOP

0

0.5

1

1.5

2

2.5

Vector Queue RBTree Btree HashMap YCSB TPCC

Norm

aliz

ed S

pee

dup

Optimized Redo Optimized Undo Optimized Shadow Paging

Log-Structured NVM Logless Atomic Durability HOOP

Ideal

Page 75: Systems Platform Research Group - NVMW 2021

17

Improving Transaction Throughput with HOOP

0

0.5

1

1.5

2

2.5

Vector Queue RBTree Btree HashMap YCSB TPCC

Norm

aliz

ed S

pee

dup

Optimized Redo Optimized Undo Optimized Shadow Paging

Log-Structured NVM Logless Atomic Durability HOOP

Ideal

Page 76: Systems Platform Research Group - NVMW 2021

17

Improving Transaction Throughput with HOOP

0

0.5

1

1.5

2

2.5

Vector Queue RBTree Btree HashMap YCSB TPCC

Norm

aliz

ed S

pee

dup

Optimized Redo Optimized Undo Optimized Shadow Paging

Log-Structured NVM Logless Atomic Durability HOOP

Ideal

Page 77: Systems Platform Research Group - NVMW 2021

17

Improving Transaction Throughput with HOOP

0

0.5

1

1.5

2

2.5

Vector Queue RBTree Btree HashMap YCSB TPCC

Norm

aliz

ed S

pee

dup

Optimized Redo Optimized Undo Optimized Shadow Paging

Log-Structured NVM Logless Atomic Durability HOOP

Ideal

Page 78: Systems Platform Research Group - NVMW 2021

17

Improving Transaction Throughput with HOOP

0

0.5

1

1.5

2

2.5

Vector Queue RBTree Btree HashMap YCSB TPCC

Norm

aliz

ed S

pee

dup

Optimized Redo Optimized Undo Optimized Shadow Paging

Log-Structured NVM Logless Atomic Durability HOOP

Ideal

HOOP is close to the performance of a system without any persistence enforcement.

Page 79: Systems Platform Research Group - NVMW 2021

18

Reducing Critical-Path Latency with HOOP

0

0.5

1

1.5

2

2.5

Vector Queue RBTree Btree HashMap YCSB TPCC

Norm

aliz

ed L

aten

cy

Ideal Optimized Redo Optimized Undo

Optimized Shadow Paging Log-Structured NVM Logless Atomic Durability

HOOP

Page 80: Systems Platform Research Group - NVMW 2021

18

Reducing Critical-Path Latency with HOOP

0

0.5

1

1.5

2

2.5

Vector Queue RBTree Btree HashMap YCSB TPCC

Norm

aliz

ed L

aten

cy

Ideal Optimized Redo Optimized Undo

Optimized Shadow Paging Log-Structured NVM Logless Atomic Durability

HOOP

Page 81: Systems Platform Research Group - NVMW 2021

18

Reducing Critical-Path Latency with HOOP

0

0.5

1

1.5

2

2.5

Vector Queue RBTree Btree HashMap YCSB TPCC

Norm

aliz

ed L

aten

cy

Ideal Optimized Redo Optimized Undo

Optimized Shadow Paging Log-Structured NVM Logless Atomic Durability

HOOP

Page 82: Systems Platform Research Group - NVMW 2021

18

Reducing Critical-Path Latency with HOOP

0

0.5

1

1.5

2

2.5

Vector Queue RBTree Btree HashMap YCSB TPCC

Norm

aliz

ed L

aten

cy

Ideal Optimized Redo Optimized Undo

Optimized Shadow Paging Log-Structured NVM Logless Atomic Durability

HOOP

Page 83: Systems Platform Research Group - NVMW 2021

18

Reducing Critical-Path Latency with HOOP

0

0.5

1

1.5

2

2.5

Vector Queue RBTree Btree HashMap YCSB TPCC

Norm

aliz

ed L

aten

cy

Ideal Optimized Redo Optimized Undo

Optimized Shadow Paging Log-Structured NVM Logless Atomic Durability

HOOP

Page 84: Systems Platform Research Group - NVMW 2021

18

Reducing Critical-Path Latency with HOOP

0

0.5

1

1.5

2

2.5

Vector Queue RBTree Btree HashMap YCSB TPCC

Norm

aliz

ed L

aten

cy

Ideal Optimized Redo Optimized Undo

Optimized Shadow Paging Log-Structured NVM Logless Atomic Durability

HOOP

Page 85: Systems Platform Research Group - NVMW 2021

18

Reducing Critical-Path Latency with HOOP

0

0.5

1

1.5

2

2.5

Vector Queue RBTree Btree HashMap YCSB TPCC

Norm

aliz

ed L

aten

cy

Ideal Optimized Redo Optimized Undo

Optimized Shadow Paging Log-Structured NVM Logless Atomic Durability

HOOP

Page 86: Systems Platform Research Group - NVMW 2021

18

Reducing Critical-Path Latency with HOOP

0

0.5

1

1.5

2

2.5

Vector Queue RBTree Btree HashMap YCSB TPCC

Norm

aliz

ed L

aten

cy

Ideal Optimized Redo Optimized Undo

Optimized Shadow Paging Log-Structured NVM Logless Atomic Durability

HOOP

HOOP achieves the lowest latency, compared to state-of-the-art approaches.

Page 87: Systems Platform Research Group - NVMW 2021

19

Reducing Write Traffic with HOOP

0

0.5

1

1.5

2

2.5

3

Vector Queue RBTree Btree HashMap YCSB TPCC

Norm

aliz

ed W

rite

Tra

ffic

Ideal Optimized Redo Optimized Undo

Optimized Shadow Paging Log-Structured NVM Logless Atomic Durability

HOOP

Page 88: Systems Platform Research Group - NVMW 2021

19

Reducing Write Traffic with HOOP

0

0.5

1

1.5

2

2.5

3

Vector Queue RBTree Btree HashMap YCSB TPCC

Norm

aliz

ed W

rite

Tra

ffic

Ideal Optimized Redo Optimized Undo

Optimized Shadow Paging Log-Structured NVM Logless Atomic Durability

HOOP

Page 89: Systems Platform Research Group - NVMW 2021

19

Reducing Write Traffic with HOOP

0

0.5

1

1.5

2

2.5

3

Vector Queue RBTree Btree HashMap YCSB TPCC

Norm

aliz

ed W

rite

Tra

ffic

Ideal Optimized Redo Optimized Undo

Optimized Shadow Paging Log-Structured NVM Logless Atomic Durability

HOOP

Page 90: Systems Platform Research Group - NVMW 2021

19

Reducing Write Traffic with HOOP

0

0.5

1

1.5

2

2.5

3

Vector Queue RBTree Btree HashMap YCSB TPCC

Norm

aliz

ed W

rite

Tra

ffic

Ideal Optimized Redo Optimized Undo

Optimized Shadow Paging Log-Structured NVM Logless Atomic Durability

HOOP

Page 91: Systems Platform Research Group - NVMW 2021

19

Reducing Write Traffic with HOOP

0

0.5

1

1.5

2

2.5

3

Vector Queue RBTree Btree HashMap YCSB TPCC

Norm

aliz

ed W

rite

Tra

ffic

Ideal Optimized Redo Optimized Undo

Optimized Shadow Paging Log-Structured NVM Logless Atomic Durability

HOOP

Page 92: Systems Platform Research Group - NVMW 2021

19

Reducing Write Traffic with HOOP

0

0.5

1

1.5

2

2.5

3

Vector Queue RBTree Btree HashMap YCSB TPCC

Norm

aliz

ed W

rite

Tra

ffic

Ideal Optimized Redo Optimized Undo

Optimized Shadow Paging Log-Structured NVM Logless Atomic Durability

HOOP

Page 93: Systems Platform Research Group - NVMW 2021

19

Reducing Write Traffic with HOOP

0

0.5

1

1.5

2

2.5

3

Vector Queue RBTree Btree HashMap YCSB TPCC

Norm

aliz

ed W

rite

Tra

ffic

Ideal Optimized Redo Optimized Undo

Optimized Shadow Paging Log-Structured NVM Logless Atomic Durability

HOOP

Page 94: Systems Platform Research Group - NVMW 2021

19

Reducing Write Traffic with HOOP

0

0.5

1

1.5

2

2.5

3

Vector Queue RBTree Btree HashMap YCSB TPCC

Norm

aliz

ed W

rite

Tra

ffic

Ideal Optimized Redo Optimized Undo

Optimized Shadow Paging Log-Structured NVM Logless Atomic Durability

HOOP

HOOP reduces write traffic by up to 2.1x, compared to logging approaches.

Page 95: Systems Platform Research Group - NVMW 2021

20

HOOP

Summary

1.7x Performance Speedup for Data-Intensive Apps

2.1x Reduction of Write Amplification

Page 96: Systems Platform Research Group - NVMW 2021

Thanks!

University of Illinois at Urbana-Champaign

Miao Cai Chance Coats Jian Huang

Systems Platform Research Group