Font Size: a A A

Research On Emerging Non-volatile Memory Based System Software

Posted on:2018-11-04Degree:DoctorType:Dissertation
Country:ChinaCandidate:G L ZhuFull Text:PDF
GTID:1368330623450474Subject:Computer Science and Technology
Abstract/Summary:PDF Full Text Request
Big data serving applicatinos running in data centres are demanding for higher performance and better energy efficiency.Hence how to provide huge memory size with low cost has been an urgent probelm.However,current storage technique(including disk and flash-based SSD)are limited to its performance,meanwhile,DRAM cannot scale even with recent 3D stacking capsule.Nowadays,the emerging non-volatile memory are scalable with near-DRAM performance is a promising future memory candidate.Nonvolatile memory can be accessed via load and store instruction with persistence guarantee,which fills the gap between traditional storage and memory,taking the role of fast storage and slow memory.Meanwhile,persistent memory chanllenges system design in many aspects:(i)As candidate of DRAM,persistent memory relies on both refacoring of system software and hardware customization,however,experimentation of software and hardware cooptimization are done in simulators,which requires long execution time and are hard to debug.(ii)Persistent memory differs from traditional memory with asymmetric read and write latency,requiring performance impact analysis for applications running on them.(iii)Server consolidation will also incoporate persistent memory into virtualization.Current cloud computing sofware stack has not extend to support persistent memory or hybrid memory based on persistent memory and DRAM.(iv)Memory centric architecture will be implemented in future data center,as central component,it is important to discuss how to use persistent memory in this architecture.To solve the problem of challenge brought by persistent memory to system software,we wrote this thesis.Based on our non-volatie memory emulation platform,we first thoroughly analyzed the performance of non-volatile,then promote and implemented a feasible route on incorporating non-volatile memory in future data center architecture.To be specific,we've done:1)Memory sensitivity study.Different memory techique has different latency,row buffer organization and data retain method.The lack of knowledge on this drives us to explore how different memory technique influence application performance.In this chaptor,we change the memory frequency to understand memory impact.We propose a quantitative metric called frequency sensitivity to evaluate how different application are impacted by memory frequency tuning.Our experiment gives evaluation on benchmarks with advice on future tuning on heterogeneous memory.2)Hybrid memory remapping mechanism on virtualization platform.Management of persistent memory is key on incorporating non-volatile memory into current system architecture.First we have to consider the design goal of persistent memory management.From the aspect of system software,non-volatile memory provides a load and store interface to access persistent data,which comes with the capacity to allocate persistent memory as the way to allocate traditional volatile memory.However,the problem is how to leverage the difference of non-volatile memory and traditional volatile memory and provide better data placement,with persistence and data security in mind.Moreover,to ensure better performance and energy efficiency,system software has to warn the hardware to do better data placement.Current cloud virtualization platform is built based on homogenesis memory assumption and is unware of future hybrid memory preset.In this chaptor,we propose a transparent hybrid memory management method as extension of current virtualization software.By observation of hotspot scatter effect of current virtualization software stack on hybrid memory,we propose an hotspot based managemt layer implemented in KVM.By tracking hotspot of different cloud operating system,based on acces pettern,out management extension can transparently map memory to hybrid meomry,which can achieve near all DRAM performence and better energy efficiency.3)Building hierarchial swapping based non-volatile memory.Traditional computer architecture are built around computation,by using cache,memory and disk-storage or network storage to build multi-layer architecture.However,with increasing demand on memory-based data service,horizontal expension of data service features independent requests and uses data to divide computation.Meanwhile,the imbalance of development puts better leveraging memory as the priority of data center evolution.4)Based on performance counter found on comodity processors,we build a nonvolatile memory emulation platform.Currently,researchers use simulators to evaluate system software innovation.Unfortunately,simulation costs orders of magnitude oftime than native execution,and most simulation platform are hard to debug.In this chapter we propose to use emulation to evaluate system software build to persistent memory,we design and implement an extensible and lightweight emulation platform called LEEF.Unlike prior non-volatile memory emulation platform which relies specific hardware or built on simple performance model,LEEF is built using detailed performance model implemented by monitoring memory events happen in the system.To incorporate innovation on non-volatile memeory,LEEF provides a trace generation tool which can collect real system meory access trace.The trace can be input to trace-based memory simulators to generate parameters of interest,which finally can be used in LEEF emulation.We compared performance model used by LEEF with prior performance models and then give two case study on how we use the trace generator.Intel RSA,Firebox by UCB and the machine from HP are all pioneers towards next generation memory-centric data center architecture.Meanwhile with non-volatile in DIMM,persistent storage accessed using load and store are available.With its low static power and near DRAM performance,non-volatile memory based memory centric architecture is on its way.This chapter focus on how to use non-volatile memory in this new architecture.We proposed an feasible scheme called SwapX,which builts hierarchial swap using non-volatile meomry mounted both in each host and in central non-volatile pool.We presented our implementation detail and experiment show our advantage against local swap and DRAM-based case.
Keywords/Search Tags:NVM, performance counter, virtualization, hybrid memory management, swap, paging
PDF Full Text Request
Related items