Chen Ji, Liu Haikun, Wang Xiaoyuan, Zhang Yu, Liao Xiaofei, Jin Hai. Largepages Supported Hierarchical DRAMNVM Hybrid Memory Systems[J]. Journal of Computer Research and Development, 2018, 55(9): 2050-2065. DOI: 10.7544/issn1000-1239.2018.20180269
Citation:
Chen Ji, Liu Haikun, Wang Xiaoyuan, Zhang Yu, Liao Xiaofei, Jin Hai. Largepages Supported Hierarchical DRAMNVM Hybrid Memory Systems[J]. Journal of Computer Research and Development, 2018, 55(9): 2050-2065. DOI: 10.7544/issn1000-1239.2018.20180269
Chen Ji, Liu Haikun, Wang Xiaoyuan, Zhang Yu, Liao Xiaofei, Jin Hai. Largepages Supported Hierarchical DRAMNVM Hybrid Memory Systems[J]. Journal of Computer Research and Development, 2018, 55(9): 2050-2065. DOI: 10.7544/issn1000-1239.2018.20180269
Citation:
Chen Ji, Liu Haikun, Wang Xiaoyuan, Zhang Yu, Liao Xiaofei, Jin Hai. Largepages Supported Hierarchical DRAMNVM Hybrid Memory Systems[J]. Journal of Computer Research and Development, 2018, 55(9): 2050-2065. DOI: 10.7544/issn1000-1239.2018.20180269
(School of Computer Science and Technology, Huazhong University of Science and Technology, Wuhan 430074) (Key Laboratory of Services Computing Technology and System(Huazhong University of Science and Technology), Ministry of Education, Wuhan 430074) (Cluster and Grid Computing Laboratory (Huazhong University of Science and Technology), Wuhan 430074) (Big Data Technology and System Laboratory (Huazhong University of Science and Technology), Wuhan 430074)
Hybrid memory systems composed of non-volatile memory (NVM) and DRAM can offer large memory capacity and DRAM-like performance. However, with the increasing memory capacity and application footprints, the address translation overhead becomes another system performance bottleneck due to lower translation lookaside buffer (TLB) converge. Large pages can significantly improve the TLB converge, however, they impede fine-grained page migration in hybrid memory systems. In this paper, we propose a hierarchical hybrid memory system that supports both large pages and fine-grained page caching. We manage NVM and DRAM with large pages and small pages, respectively. The DRAM is used as a cache to NVM by using a direct mapping mechanism. We propose a cache filtering mechanism to only fetch frequently-access (hot) data into the DRAM cache. CPUs can still access the cold data directly in NVM through a DRAM bypassing mechanism. We dynamically adjust the threshold of hot data classification to adapt to the diversifying and dynamic memory access patterns of applications. Experimental results show that our strategy improves the application performance by 69.9% and 15.2% compared with a NVM-only system and the state-of-the-art CHOP scheme, respectively. The performance gap is only 8.8% compared with a DRAM-only memory system with large pages support.