nova: the fastest file system for nvdimms · 2019. 12. 21. · existing file systems do not meet...

17
NOVA: The Fastest File System for NVDIMMs Steven Swanson, UC San Diego

Upload: others

Post on 03-Oct-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

NOVA: The Fastest File System for NVDIMMs

Steven Swanson, UC San Diego

© 2017 SNIA Persistent Memory Summit. All Rights Reserved.

XFS

EXT4

F2FS

BTRFS

NILFS

© 2017 SNIA Persistent Memory Summit. All Rights Reserved.

Disk-based file systems are inadequate for NVMM

Disk-based file systems cannot exploit NVMM performance Performance optimization compromises consistency on system failure [1]

[1] Pillai et al, All File Systems Are Not Created Equal: On the Complexity of Crafting Crash-Consistent Applications, OSDI '14.

Atomicity 1-Sector overwrit

e

1-Sector append

1-Block overwrit

e

1-Block append

N-Block overwrit

e

N-Block append

Ext4 wb ✓ ✗ ✗ ✗ ✗ ✗

Ext4 Order ✓ ✓ ✗ ✓ ✗ ✓

Ext4 Dataj ✓ ✓ ✓ ✓ ✗ ✓

Btrfs ✓ ✓ ✓ ✓ ✗ ✓

xfs ✓ ✓ ✗ ✓ ✗ ✓

Reiserfs ✓ ✓ ✗ ✓ ✗ ✓

© 2017 SNIA Persistent Memory Summit. All Rights Reserved.

XFS-DAX EXT4-DAX BPFS SCMFS PMFS Aerie

M1FS NOVA

© 2017 SNIA Persistent Memory Summit. All Rights Reserved.

Previous Prototype NVMM file systems are not strongly consistent

DAX does not provide data atomicity guarantee So programming is more difficult

Atomicity Metadata Data ATomic Mmap [1] Snapshot

BPFS ✓ ✓ [2] ✗ ✗

PMFS ✓ ✗ ✗ ✗

Ext4-DAX ✓ ✗ ✗ ✗

Xfs-DAX ✓ ✗ ✗ ✗

SCMFS ✗ ✗ ✗ ✗

Aerie ✓ ✗ ✗ ✗

© 2017 SNIA Persistent Memory Summit. All Rights Reserved.

Ext4-DAX and xfs-DAX shortcomings

No data atomicity support Single journal shared by all the transactions (JBD2-based) Poor performance Development teams are (rightly) “disk first”.

© 2017 SNIA Persistent Memory Summit. All Rights Reserved.

NOVA provides strong atomicity guarantees

Atomicity Metadata Data Mmap

BPFS ✓ ✓ ✗

PMFS ✓ ✗ ✗

Ext4-DAX ✓ ✗ ✗

Xfs-DAX ✓ ✗ ✗

SCMFS ✗ ✗ ✗

Aerie ✓ ✗ ✗

Atomicity 1-Sector overwrite

1-Sector append

1-Block overwrite

1-Block append

N-Block overwrite

N-Block append

Ext4 wb ✓ ✗ ✗ ✗ ✗ ✗

Ext4 Order ✓ ✓ ✗ ✓ ✗ ✓

Ext4 Dataj ✓ ✓ ✓ ✓ ✗ ✓

Btrfs ✓ ✓ ✓ ✓ ✗ ✓

xfs ✓ ✓ ✗ ✓ ✗ ✓

Reiserfs ✓ ✓ ✗ ✓ ✗ ✓

© 2017 SNIA Persistent Memory Summit. All Rights Reserved.

NOVA provides strong atomicity guarantees

Atomicity Metadata Data Mmap

BPFS ✓ ✓ ✗

PMFS ✓ ✗ ✗

Ext4-DAX ✓ ✗ ✗

Xfs-DAX ✓ ✗ ✗

SCMFS ✗ ✗ ✗

Aerie ✓ ✗ ✗

NOVA ✓ ✓ ✓

Atomicity 1-Sector overwrite

1-Sector append

1-Block overwrite

1-Block append

N-Block overwrite

N-Block append

Ext4 wb ✓ ✗ ✗ ✗ ✗ ✗

Ext4 Order ✓ ✓ ✗ ✓ ✗ ✓

Ext4 Dataj ✓ ✓ ✓ ✓ ✗ ✓

Btrfs ✓ ✓ ✓ ✓ ✗ ✓

xfs ✓ ✓ ✗ ✓ ✗ ✓

Reiserfs ✓ ✓ ✗ ✓ ✗ ✓

NOVA ✓ ✓ ✓ ✓ ✓ ✓

© 2017 SNIA Persistent Memory Summit. All Rights Reserved.

NOVA: A File System for NVDIMMs

Dispenses with disk-centric baggage Strong consistency guarantees Lean and fast

Freely optimize for NVDIMMs No need to worry about future disk-based features or optimizations. E.g., Userspace f/msync() is no problem.

Focus on latency and bandwidth advantages of NVDIMMs Freely available (GPL)

10

© 2017 SNIA Persistent Memory Summit. All Rights Reserved.

Log Structure + copy-on-write + Journals

• One log per iNode • Non-contiguous • Fast, Simple atomic

updates • Meta-data only

File log

Tail Tail

NOVA

© 2017 SNIA Persistent Memory Summit. All Rights Reserved.

Log Structure + copy-on-write + Journals

File log

Tail

Data 1 Data 2

Tail

Data 0 Data 1

NOVA

• Multi-page atomic update

• Fast allocation • Instant data GC

© 2017 SNIA Persistent Memory Summit. All Rights Reserved.

Log Structure + copy-on-write + Journals

File log

Directory log

Tail

Tail Tail

Tail

Dir tail

File tail Journal

NOVA

• Small, fixed sized journals

• For complex ops.

© 2017 SNIA Persistent Memory Summit. All Rights Reserved.

NOVA Reliability Features

NVDIMM file systems are subject to multiple failure modes Media errors – “hard” and “soft” Local system failures Large scale failures

NOVA includes reliability mechanisms (April release) Replicated metadata CRC for metadata Erasure codes for file data Read-only checkpoints for backup

NOVA includes “unsafe” modes that improve performance but sacrifice consistency (April release)

© 2017 SNIA Persistent Memory Summit. All Rights Reserved.

Evaluation: Latency

• Intel PM Emulation Platform – Emulates different NVM

characteristics – Emulates clwb/PCOMMIT

latency • NOVA provides low latency

atomicity 0

5

10

15

20

25

Create Append (4KB) Delete

Late

ncy

(mic

rose

cond

)

Operation latency

Ext4-datajournal Ext4-DAX

m1fs NOVA

© 2017 SNIA Persistent Memory Summit. All Rights Reserved.

Filebench throughput

• NOVA achieves high performance with strong data consistency

050

100150200250300350400450

Ops

per

sec

ond

(x10

00)

Filebench throughput

Ext4-datajournal Ext4-DAX

m1fs NOVA

© 2017 SNIA Persistent Memory Summit. All Rights Reserved.

Conclusion

Existing file systems do not meet the requirements of applications on NVMM file systems NOVA’s multi-log design achieves high concurrency, efficient garbage collection and fast recovery NOVA outperforms existing file systems while providing stronger consistency and atomicity guarantees NOVA protects data against media errors and system failures.

© 2017 SNIA Persistent Memory Summit. All Rights Reserved.

Thank you!

Try NOVA! https://github.com/NVSL/NOVA