Skip to Main content Skip to Navigation

Software-level analysis and optimization to mitigate the cost of write operations on non-volatile memories

Abstract : Traditional memories such as SRAM, DRAM and Flash have faced during the last years, critical challenges related to what modern computing systems required: high performance, high storage density and low power. As the number of CMOS transistors is increasing, the leakage power consumption becomes a critical issue for energy-efficient systems. SRAM and DRAM consume too much energy and have low density and Flash memories have a limited write endurance. Therefore, these technologies can no longer ensure the needs in both embedded and high-performance computing domains. The future memory systems must respect the energy and performance requirements. Since Non Volatile Memories (NVMs) appeared, many studies have shown prominent features where such technologies can be a potential replacement of the conventional memories used on-chip and off-chip. NVMs have important qualities in storage density, scalability, leakage power, access performance and write endurance. Nevertheless, there are still some critical drawbacks of these new technologies. The main drawback is the cost of write operations in terms of latency and energy consumption. We propose a compiler-level optimization that reduces the number of write operations by elimination the execution of redundant stores, called silent stores. A store is silent if it’s writing in a memory address the same value that is already stored at this address. The LLVM-based optimization eliminates the identified silent stores in a program by not executing them. Furthermore, the cost of a write operation is highly dependent on the used NVM and its non-volatility called retention time; when the retention time is high then the latency and the energetic cost of a write operation are considerably high and vice versa. Based on that, we propose an approach applicable in a multi- bank NVM where each bank is designed with a specific retention time. We analysis a program and we compute the worst-case lifetime of a store instruction to allocate data to the most appropriate NVM bank.
Document type :
Complete list of metadatas

Cited literature [136 references]  Display  Hide  Download
Contributor : Abes Star :  Contact
Submitted on : Thursday, April 4, 2019 - 9:55:06 AM
Last modification on : Thursday, January 7, 2021 - 4:34:56 PM
Long-term archiving on: : Friday, July 5, 2019 - 12:56:53 PM


Version validated by the jury (STAR)


  • HAL Id : tel-02089718, version 1


Rabab Bouziane. Software-level analysis and optimization to mitigate the cost of write operations on non-volatile memories. Performance [cs.PF]. Université Rennes 1, 2018. English. ⟨NNT : 2018REN1S073⟩. ⟨tel-02089718⟩



Record views


Files downloads