Reducing NVM Writes with Optimized Shadow Paging 10

  • Slides: 24
Download presentation
Reducing NVM Writes with Optimized Shadow Paging 10 th {USENIX} Workshop on Hot Topics

Reducing NVM Writes with Optimized Shadow Paging 10 th {USENIX} Workshop on Hot Topics in Storage and File Systems (Hot. Storage 18)

Outline • Introduction • Related Work • Proposed Scheme • Evaluation • Conclusion

Outline • Introduction • Related Work • Proposed Scheme • Evaluation • Conclusion

Introduction(1/2) • Byte-addressable non-volatile memory (BNVM) technologies are closing the performance gap between traditional

Introduction(1/2) • Byte-addressable non-volatile memory (BNVM) technologies are closing the performance gap between traditional storage and memory • However, the integrity of persistent data structures after an unclean shutdown remains a major concern

Introduction(2/2) Cache Memory CPU BNVM unclean inconsistent state shutdown Application Persistent Data structure

Introduction(2/2) Cache Memory CPU BNVM unclean inconsistent state shutdown Application Persistent Data structure

Outline • Introduction • Related Work • Proposed Scheme • Evaluation • Conclusion

Outline • Introduction • Related Work • Proposed Scheme • Evaluation • Conclusion

Motivation(1/2) Log

Motivation(1/2) Log

Motivation(2/2) Shadow Page

Motivation(2/2) Shadow Page

Outline • Introduction • Related Work • Proposed Scheme • Evaluation • Conclusion

Outline • Introduction • Related Work • Proposed Scheme • Evaluation • Conclusion

Proposed Scheme(1/9)

Proposed Scheme(1/9)

Proposed Scheme(2/9)

Proposed Scheme(2/9)

Proposed Scheme(3/9) TLB Cache CPU Page number Frame number Main memory Secondary storage

Proposed Scheme(3/9) TLB Cache CPU Page number Frame number Main memory Secondary storage

Proposed Scheme(4/9) TLB Page number Frame number most recent consistent state of the page.

Proposed Scheme(4/9) TLB Page number Frame number most recent consistent state of the page. CPU Committed updated bitmap 1 bit Consistent state table Virtual page 1 bit the current state of a virtual page Cache BNVM P 0 P 1 CB

Proposed Scheme(5/9) Write 1 TLB Page number Frame number Commit Update A CPU CB

Proposed Scheme(5/9) Write 1 TLB Page number Frame number Commit Update A CPU CB Committed Updated Bitmap 01 10 0 0 0 Consistent state table Virtual page Update P 0 P 1 CB 0 0 A 0 0 Cache BNVM

Proposed Scheme(6/9) Read TLB Page number Frame number Read A CPU = 0 0

Proposed Scheme(6/9) Read TLB Page number Frame number Read A CPU = 0 0 CB UB Committed Updated Bitmap 0 0 0 0 0 Consistent state table Virtual page P 0 P 1 CB 0 0 A 0 0 Cache BNVM

Proposed Scheme(7/9) Make Transaction Commit Durable TLB Page number Frame number Commit Update A

Proposed Scheme(7/9) Make Transaction Commit Durable TLB Page number Frame number Commit Update A Committed Updated Bitmap 0 1 1 0 0 0 unclean shutdown Consistent state table A Virtual page update P 0 P 1 CB 0 1 0 0 0

Proposed Scheme(8/9) TLB eviction TLB Page number Frame number A B Committed Updated Bitmap

Proposed Scheme(8/9) TLB eviction TLB Page number Frame number A B Committed Updated Bitmap 0 0 1 0 0 0 Consistent Page Consolidation state. P 0 Virtual P 1 P 0 P 1 page table A A BA C D CB 00 A 00 B C 01 00 C D Update TLB eviction Update virtual address to physical address mapping

Proposed Scheme(9/9) Lightweight Journaling for Multi-page Transactions A Transaction VP_A Write back Journaling VP_E

Proposed Scheme(9/9) Lightweight Journaling for Multi-page Transactions A Transaction VP_A Write back Journaling VP_E VP_C Crash BNVM A updated C updated

Outline • Introduction • Related Work • Proposed Scheme • Evaluation • Conclusion

Outline • Introduction • Related Work • Proposed Scheme • Evaluation • Conclusion

Evaluation(1/4) Simulator: ØMc. Sim. A+ Øout-of-order processors Ø 64 -entry L 1 DTLB Workloads

Evaluation(1/4) Simulator: ØMc. Sim. A+ Øout-of-order processors Ø 64 -entry L 1 DTLB Workloads SPS、HT-uni、RBT-uni、BT-uni 、 HT-zipf、RBT-zipf 、 BT-zipf

Evaluation(2/4)

Evaluation(2/4)

Evaluation(2/4) temporal locality

Evaluation(2/4) temporal locality

Evaluation(3/4) spatial locality

Evaluation(3/4) spatial locality

Outline • Introduction • Related Work • Proposed Scheme • Evaluation • Conclusion

Outline • Introduction • Related Work • Proposed Scheme • Evaluation • Conclusion

Conclusion • OSP extends shadow paging with cache line level mappings, allowing durable transactions

Conclusion • OSP extends shadow paging with cache line level mappings, allowing durable transactions to be implemented without the need to log actual data for each update and without incurring unnecessary persisting overhead