作者: Anthony Demeri , Wook-Hee Kim , R. Madhava Krishnan , Jaeho Kim , Mohannad Ismail
关键词:
摘要: Persistent memory allocator is an essential component of any Non-Volatile Main Memory (NVMM) application. A slow can bottleneck the entire application stack, while unsecure render applications inconsistent upon program bugs or system failure. Unlike DRAM-based allocators, it indispensable for NVMM to guarantee its heap metadata safety from both internal and external errors. An effective should be 1) safe, 2) scalable, 3) high performing. Unfortunately, none existing persistent allocators achieve all three requisites. For example, we found that even Intel's de-facto allocator-libpmemobj vulnerable silent data corruption leaks resulting a simple overflow. In this paper, propose Poseidon, fast, scalable allocator. The premise Poseidon revolves around providing user with per-CPU sub-heaps scalability performance, managing in segregated fashion efficiently protecting using hardware-based protection scheme, Protection Keys (MPK). We evaluate wide array microbenchmarks real-world benchmarks, noting: outperforms state-of-art by significant margin, showing improved also guaranteeing protection.