[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
research-article

Silent Shredder: Zero-Cost Shredding for Secure Non-Volatile Main Memory Controllers

Published: 25 March 2016 Publication History

Abstract

As non-volatile memory (NVM) technologies are expected to replace DRAM in the near future, new challenges have emerged. For example, NVMs have slow and power-consuming writes, and limited write endurance. In addition, NVMs have a data remanence vulnerability, i.e., they retain data for a long time after being powered off. NVM encryption alleviates the vulnerability, but exacerbates the limited endurance by increasing the number of writes to memory. We observe that, in current systems, a large percentage of main memory writes result from data shredding in operating systems, a process of zeroing out physical pages before mapping them to new processes, in order to protect previous processes' data. In this paper, we propose Silent Shredder, which repurposes initialization vectors used in standard counter mode encryption to completely eliminate the data shredding writes. Silent Shredder also speeds up reading shredded cache lines, and hence reduces power consumption and improves overall performance. To evaluate our design, we run three PowerGraph applications and 26 multi-programmed workloads from the SPEC 2006 suite, on a gem5-based full system simulator. Silent Shredder eliminates an average of 48.6% of the writes in the initialization and graph construction phases. It speeds up main memory reads by 3.3 times, and improves the number of instructions per cycle (IPC) by 6.4% on average. Finally, we discuss several use cases, including virtual machines' data isolation and user-level large data initialization, where Silent Shredder can be used effectively at no extra cost.

References

[1]
Intel 3D XPoint. URL http://newsroom.intel.com/docs/DOC-6713.
[2]
FreeBSD. URL http://www.freebsd.org/doc/en_US.ISO8859--1/articles/vm-design/prefault-optimizations.html.
[3]
Intel. Intel 64 and IA-32 Architectures Software Developer's Manual, Volume 3a, Chapter 11, Page 12. April 2012.
[4]
The Machine: A new kind of computer. URL http://www.hpl.hp.com/research/systems-research/themachine/.
[5]
SPEC, SPEC CPU2000 and CPU2006, http://www.spec.org/.
[6]
Huai, yiming, et al. "observation of spin-transfer switching in deep submicron-sized and low-resistance magnetic tunnel junctions." Applied Physics Letters 84.16: 3118--3120, 2004.
[7]
Understanding Memory Resource Management in VMware vSphere® 5.0.
[8]
Exploring high-performance and energy proportional interface for phase change memory systems. the proceedings of the IEEE 20th International Symposium on High Performance Computer Architecture (HPCA-20), 2013, 0: 210--221, 2013. ISSN 1530-0897. http://doi.ieeecomputersociety.org/10.1109/HPCA.2013.6522320.
[9]
R. H. Arpaci-Dusseau and A. C. Arpaci-Dusseau. Operating Systems: Three Easy Pieces. Arpaci-Dusseau Books, 0.80 edition, May 2014.
[10]
J. Bennett and S. L. and. The Netflix Prize. In In KDD Cup and Workshop in conjunction with KDD, 2007.
[11]
K. Bhandari, D. R. Chakrabarti, and H.-J. Boehm. Implications of CPU caching on byte-addressable non-volatile memory programming. Technical report, 2012.
[12]
N. Binkert, B. Beckmann, G. Black, S. K. Reinhardt, A. Saidi, A. Basu, J. Hestness, D. R. Hower, T. Krishna, S. Sardashti, R. Sen, K. Sewell, M. Shoaib, N. Vaish, M. D. Hill, and D. A. Wood. The gem5 simulator. SIGARCH Comput. Archit. News, 39 (2): 1--7, Aug. 2011. ISSN 0163--5964. 10.1145/2024716.2024718. URL http://doi.acm.org/10.1145/2024716.2024718.
[13]
D. Bovet and M. Cesati. Understanding The Linux Kernel. Oreilly & Associates Inc, 2005. ISBN 0596005652.
[14]
M. Calhoun, S. Rixner, and A. L. Cox. Optimizing kernel block memory operations. In IEEE 4th Workshop on Memory Performance Issues, Feb. 2006.
[15]
D. R. Chakrabarti, H.-J. Boehm, and K. Bhandari. Atlas: Leveraging locks for non-volatile memory consistency. In the proceedings of the 2014 ACM International Conference on Object Oriented Programming Systems Languages & Applications, pages 433--452. ACM, 2014.
[16]
S. Chhabra and Y. Solihin. i-NVMM: A Secure Non-volatile Main Memory System with Incremental Encryption. In "the proceedings of the 38th Annual International Symposium on Computer Architecture (ISCA-38), 2011, ISCA '11, pages 177--188, New York, NY, USA, 2011. ACM. ISBN 978--1--4503-0472--6. 10.1145/2000064.2000086. URL http://doi.acm.org/10.1145/2000064.2000086.
[17]
S. Cho and H. Lee. Flip-n-write: A simple deterministic technique to improve pram write performance, energy and endurance. In the proceedings of the 42nd Annual IEEE/ACM International Symposium on Microarchitecture, 2009. MICRO-42, pages 347--357, Dec 2009.
[18]
J. Chow, B. Pfaff, T. Garfinkel, and M. Rosenblum. Shredding your garbage: Reducing data lifetime through secure deallocation. In the proceedings of the 14th Conference on USENIX Security Symposium (SSYM-14), 2005, SSYM'05, pages 22--22, Berkeley, CA, USA, 2005. USENIX Association. URL http://dl.acm.org/citation.cfm?id=1251398.1251420.
[19]
X. Fan, W.-D. Weber, and L. A. Barroso. Power provisioning for a warehouse-sized computer. In the proceedings of the 34th Annual International Symposium on Computer Architecture (ISCA), 2007, ISCA '07, pages 13--23, New York, NY, USA, 2007. ACM. ISBN 978--1--59593--706--3. 10.1145/1250662.1250665. URL http://doi.acm.org/10.1145/1250662.1250665.
[20]
J. E. Gonzalez, Y. Low, H. Gu, D. Bickson, and C. Guestrin. Powergraph: Distributed graph-parallel computation on natural graphs. In the proceedings of the 10th USENIX Conference on Operating Systems Design and Implementation (OSDI-10), 2012, OSDI'12, pages 17--30, Berkeley, CA, USA, 2012. USENIX Association. ISBN 978-1-931971-96-6. URL http://dl.acm.org/citation.cfm?id=2387880.2387883.
[21]
X. Jiang, Y. Solihin, L. Zhao, and R. Iyer. Architecture support for improving bulk memory copying and initialization performance. In the proceedings of the 2009 18th International Conference on Parallel Architectures and Compilation Techniques (PACT-18), 2009, PACT '09, pages 169--180, Washington, DC, USA, 2009. IEEE Computer Society. ISBN 978-0--7695--3771--9. 10.1109/PACT.2009.31. URL http://dx.doi.org/10.1109/PACT.2009.31.
[22]
J. Lewis, B. Black, and M. Lipasti. Avoiding initialization misses to the heap. In the proceedings of the 29th Annual International Symposium on Computer Architecture (ISCA-29), 2002, pages 183--194, 2002. 10.1109/ISCA.2002.1003577.
[23]
R.-S. Liu, D.-Y. Shen, C.-L. Yang, S.-C. Yu, and C.-Y. M. Wang. NVM Duet: Unified working memory and persistent store architecture. In ACM SIGPLAN Notices, volume 49, pages 455--470. ACM, 2014.
[24]
I. Moraru, D. G. Andersen, M. Kaminsky, N. Binkert, N. Tolia, R. Munz, and P. Ranganathan. Persistent, protected and cached: Building blocks for main memory data stores. Technical Report Carnegie Mellon University-PDL-11--114, 2012.
[25]
N. Muralimanohar and R. Balasubramonian. Cacti 6.0: A Tool to Model Large Caches.
[26]
O. Mutlu and L. Subramanian. Research Problems and Opportunities in Memory Systems. Invited Article in Supercomputing Frontiers and Innovations (SUPERFRI), 2015., pages 32--34.
[27]
P. J. Nair, D.-H. Kim, and M. K. Qureshi. Archshield: Architectural framework for assisting dram scaling by tolerating high error rates. In the proceedings of the 40th Annual International Symposium on Computer Architecture (ISCA-40), 2013, ISCA '13, pages 72--83, New York, NY, USA, 2013. ACM. ISBN 978--1--4503--2079--5. 10.1145/2485922.2485929. URL http://doi.acm.org/10.1145/2485922.2485929.
[28]
G. Novark, E. D. Berger, and B. G. Zorn. Exterminator: Automatically correcting memory errors with high probability. In the proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), 2007. Press, 2007.
[29]
B. Pham, A. Bhattacharjee, Y. Eckert, and G. Loh. Increasing tlb reach by exploiting clustering in page translations. In the proceedings of the IEEE 20th International Symposium on High Performance Computer Architecture (HPCA), 2014, pages 558--567, Feb 2014. 10.1109/HPCA.2014.6835964.
[30]
M. Qureshi, J. Karidis, M. Franceschini, V. Srinivasan, L. Lastras, and B. Abali. Enhancing lifetime and security of PCM-based Main Memory with Start-Gap Wear Leveling. In the proceedings of the 42nd Annual IEEE/ACM International Symposium on Microarchitecture (MICRO-42), 2009, pages 14--23, Dec 2009.
[31]
B. Rogers, S. Chhabra, M. Prvulovic, and Y. Solihin. Using address independent seed encryption and bonsai merkle trees to make secure processors os- and performance-friendly. In the proceedings of the 40th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO-40), 2007, MICRO 40, pages 183--196, Washington, DC, USA, 2007. IEEE Computer Society. ISBN 0--7695--3047--8. 10.1109/MICRO.2007.44. URL http://dx.doi.org/10.1109/MICRO.2007.44.
[32]
M. Russinovich and D. A. Solomon. Windows Internals: Including Windows Server 2008 and Windows Vista, Fifth Edition. Microsoft Press, 5th edition, 2009. ISBN 0735625301, 9780735625303.
[33]
J. B. Sartor, W. Heirman, S. M. Blackburn, L. Eeckhout, and K. S. McKinley. Cooperative cache scrubbing. In the proceedings of the 23rd International Conference on Parallel Architectures and Compilation (PACT-23), 2014, pages 15--26. ACM, 2014.
[34]
V. Seshadri, Y. Kim, C. Fallin, D. Lee, R. Ausavarungnirun, G. Pekhimenko, Y. Luo, O. Mutlu, P. B. Gibbons, M. A. Kozuch, and T. C. Mowry. Rowclone: Fast and energy-efficient in-dram bulk data copy and initialization. In the proceedings of the 46th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO-46), 2013, MICRO-46, pages 185--197, New York, NY, USA, 2013. ACM. ISBN 978--1--4503--2638--4. 10.1145/2540708.2540725. URL http://doi.acm.org/10.1145/2540708.2540725.
[35]
A. Singh. Mac OS X Internals. Addison-Wesley Professional, 2006. ISBN 0321278542.
[36]
W. Stallings. Cryptography and Network Security (6th ed.). 2014.
[37]
J. Stuecheli. Power8. In Hot Chips. Vol. 25. 2013., 2013.
[38]
che, and Jalby]CLEARS. Valat, M. Pérache, and W. Jalby. Introducing kernel-level page reuse for high performance computing. In the proceedings of the ACM SIGPLAN Workshop on Memory Systems Performance and Correctness, page 3. ACM, 2013.
[39]
H. Volos, A. J. Tack, and M. M. Swift. Mnemosyne: Lightweight persistent memory. ACM SIGPLAN Notices, 46 (3): 91--104, 2011.
[40]
C. Yan, B. Rogers, D. Englender, D. Solihin, and M. Prvulovic. Improving cost, performance, and security of memory encryption and authentication. In the proceedings of the 33rd International Symposium on Computer Architecture (ISCA-33), 2006, pages 179--190, 2006. 10.1109/ISCA.2006.22.
[41]
J. J. Yang, D. B. Strukov, and D. R. Stewart. Memristive devices for computing. Nature nanotechnology, 8 (1): 13--24, 2013.
[42]
X. Yang, S. M. Blackburn, D. Frampton, J. B. Sartor, and K. S. McKinley. Why nothing matters: The impact of zeroing. In the proceedings of the 2011 ACM International Conference on Object Oriented Programming Systems Languages and Applications (OOPSLA), 2011, OOPSLA '11, pages 307--324, New York, NY, USA, 2011. ACM. ISBN 978--1--4503-0940-0. 10.1145/2048066.2048092. URL http://doi.acm.org/10.1145/2048066.2048092.
[43]
V. Young, P. J. Nair, and M. K. Qureshi. DEUCE: Write-Efficient Encryption for Non-Volatile Memories. In the proceedings of the 20th International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS-20), 2015, ASPLOS '15, pages 33--44, New York, NY, USA, 2015. ACM. ISBN 978--1--4503--2835--7. 10.1145/2694344.2694387. URL http://doi.acm.org/10.1145/2694344.2694387.
[44]
R. Zafarani and H. Liu. Social computing data repository at ASU, 2009. URL http://socialcomputing.asu.edu.
[45]
P. Zhou, B. Zhao, J. Yang, and Y. Zhang. A durable and energy efficient main memory using phase change memory technology. In the proceedings of the 36th Annual International Symposium on Computer Architecture (ISCA-36), 2009, ISCA '09, pages 14--23, New York, NY, USA, 2009. ACM. ISBN 978--1--60558--526-0. 10.1145/1555754.1555759. URL http://doi.acm.org/10.1145/1555754.1555759.

Cited By

View all
  • (2024)AmLuCEP: Amalgamating LUT-based Compression and Adaptive Encoding Assisted Block Placement To Improve Lifetime of PCM-based Main MemoriesACM Transactions on Design Automation of Electronic Systems10.1145/368933429:6(1-24)Online publication date: 20-Aug-2024
  • (2024)A Secure Computing System With Hardware-Efficient Lazy Bonsai Merkle Tree for FPGA-Attached Embedded MemoryIEEE Transactions on Dependable and Secure Computing10.1109/TDSC.2023.332493521:4(3262-3279)Online publication date: 1-Jul-2024
  • (2024)RC-NVM: Recovery-Aware Reliability-Security Co-Design for Non-Volatile MemoriesIEEE Transactions on Dependable and Secure Computing10.1109/TDSC.2023.327903121:4(1817-1830)Online publication date: 1-Jul-2024
  • Show More Cited By

Index Terms

  1. Silent Shredder: Zero-Cost Shredding for Secure Non-Volatile Main Memory Controllers

    Recommendations

    Comments

    Please enable JavaScript to view thecomments powered by Disqus.

    Information & Contributors

    Information

    Published In

    cover image ACM SIGPLAN Notices
    ACM SIGPLAN Notices  Volume 51, Issue 4
    ASPLOS '16
    April 2016
    774 pages
    ISSN:0362-1340
    EISSN:1558-1160
    DOI:10.1145/2954679
    • Editor:
    • Andy Gill
    Issue’s Table of Contents
    • cover image ACM Conferences
      ASPLOS '16: Proceedings of the Twenty-First International Conference on Architectural Support for Programming Languages and Operating Systems
      March 2016
      824 pages
      ISBN:9781450340915
      DOI:10.1145/2872362
      • General Chair:
      • Tom Conte,
      • Program Chair:
      • Yuanyuan Zhou
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 25 March 2016
    Published in SIGPLAN Volume 51, Issue 4

    Check for updates

    Author Tags

    1. data protection
    2. hardware security
    3. keywords encryption
    4. phase-change memory

    Qualifiers

    • Research-article

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)33
    • Downloads (Last 6 weeks)2
    Reflects downloads up to 14 Dec 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2024)AmLuCEP: Amalgamating LUT-based Compression and Adaptive Encoding Assisted Block Placement To Improve Lifetime of PCM-based Main MemoriesACM Transactions on Design Automation of Electronic Systems10.1145/368933429:6(1-24)Online publication date: 20-Aug-2024
    • (2024)A Secure Computing System With Hardware-Efficient Lazy Bonsai Merkle Tree for FPGA-Attached Embedded MemoryIEEE Transactions on Dependable and Secure Computing10.1109/TDSC.2023.332493521:4(3262-3279)Online publication date: 1-Jul-2024
    • (2024)RC-NVM: Recovery-Aware Reliability-Security Co-Design for Non-Volatile MemoriesIEEE Transactions on Dependable and Secure Computing10.1109/TDSC.2023.327903121:4(1817-1830)Online publication date: 1-Jul-2024
    • (2024)TDPP: 2-D Permutation-Based Protection of Memristive Deep Neural NetworksIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems10.1109/TCAD.2023.332235143:3(742-755)Online publication date: 1-Mar-2024
    • (2024)CTR+: A High-Performance Metadata Access Scheme for Secure Embedded Memory in Heterogeneous Computing Systems2024 IEEE International Symposium on Hardware Oriented Security and Trust (HOST)10.1109/HOST55342.2024.10545394(304-308)Online publication date: 6-May-2024
    • (2022)CoSeP: Compression and Content-based Selection Procedure to Improve Lifetime of Encrypted Non-Volatile Main MemoriesProceedings of the Great Lakes Symposium on VLSI 202210.1145/3526241.3530375(393-396)Online publication date: 6-Jun-2022
    • (2022)ARES: Persistently Secure Non-Volatile Memory with Processor-transparent and Hardware-friendly Integrity Verification and Metadata RecoveryACM Transactions on Embedded Computing Systems10.1145/349273521:1(1-32)Online publication date: 10-Feb-2022
    • (2022) Pop-Crypt: Identification and Management of Pop ular Words for Enhancing Lifetime of En Crypt ed Nonvolatile Main Memories IEEE Transactions on Very Large Scale Integration (VLSI) Systems10.1109/TVLSI.2022.318379330:9(1219-1229)Online publication date: Sep-2022
    • (2022)PME: Processing-in-memory Masking and Encoding for Secure NVM2022 IEEE 24th Int Conf on High Performance Computing & Communications; 8th Int Conf on Data Science & Systems; 20th Int Conf on Smart City; 8th Int Conf on Dependability in Sensor, Cloud & Big Data Systems & Application (HPCC/DSS/SmartCity/DependSys)10.1109/HPCC-DSS-SmartCity-DependSys57074.2022.00231(1501-1508)Online publication date: Dec-2022
    • (2021)TLB-pilot: Mitigating TLB Contention Attack on GPUs with Microarchitecture-Aware SchedulingACM Transactions on Architecture and Code Optimization10.1145/349121819:1(1-23)Online publication date: 6-Dec-2021
    • Show More Cited By

    View Options

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media