Dynamic recognition prefetch engine for DRAM-PCM hybrid main memory

Springer Science and Business Media LLC - Tập 78 - Trang 1885-1902 - 2021
Mengzhao Zhang1, Jeong-Geun Kim1, Su-Kyung Yoon2, Shin-Dug Kim1
1Department of Computer Science, Yonsei University, Seoul, Republic of Korea
2Division of Computer Science and Engineering, Jeonbuk National University, Jeonju, Republic of Korea

Tóm tắt

This research is to design an effective prefetching method required for hybrid main memory systems consisting of dynamic random-access memory (DRAM) and phase-change memory (PCM) components, which can be especially used for big data applications and massive-scale computing environment. Conventional prefetchers perform adequately for regular memory access patterns. However, graph processing applications show extremely irregular memory access characteristics, causing some difficulty in predicting accurate prefetching operation. Therefore, an effective dynamical prefetching algorithm based on the regression method is proposed in this study. We have designed an intelligent prefetch engine that can identify any dynamic accessing characteristics in memory accessing sequences. Specifically, it can select regular, linear, or polynomial regression predictive analysis based on the memory access sequence characteristics, and also dynamically determine the number of pages required for any selected prefetching. We also present a DRAM-PCM hybrid memory structure that can reduce the energy consumption and resolve the thermal issue that hampers conventional DRAM memory systems. Experimental results indicate that the performance can increase by around 40%, compared to that of conventional DRAM memory structures.

Tài liệu tham khảo

Hasso Plattner, Zeier A (2011) In-Memory Data Management. Spriger, Germany Jiang T, Zhang Q, Hou R, Chai L, McKee SA, Jia Z, Sun N (2014) Understanding the behavior of in-memory computing workloads. In: IEEE International Symposium on Workload Characterization (IISWC), pp. 22–30 Yun Ji-Tae et al (2018) Regression Prefetcher with Preprocessing for DRAM-PCM Hybrid Main Memory. IEEE Comput Architect Lett 17(2):163–166 Qureshi MK et al (2009) Scalable high performance main memory system using phase-change memory technology. In: Proc 36th Annu Int Symp Comput Archit, pp. 24–33 Yoon S-K et al (2016) Optimized memory-disk integrated system with DRAM and nonvolatile memory. IEEE Trans MultiScale Comput Syst 2(2):83–93 Nesbit KJ and Smith JE (2004) Data cache prefetching using a global history buffer. In: Proc. Int Symp. High Perform. Comput Archit, pp. 96–105 Fu JWC et al (1992) Stride directed prefetching in scalar processors. In: Proc. IEEE/ACM Int. Symp. Microarchitecture, pp. 102–110 Nai L et al (2015) GraphBIG: understanding graph computing in the context of industrial solutions. In: Proc. Int. Conf. High Perform. Comput. Netw. Storage Anal., pp. 1–12 Somogyi S et al (2006) Spatial memory streaming. In: Proc Int Symp Comput Archit, pp. 252–263 Yuan LIANG, Jing-ling YUAN, Min-cheng CHEN (2019) Prefetching algorithm of Sarsa learning based on space optimization. Comput Sci 46(3):327–331 Zhuang X and Lee H-HS (2003) A hardware-based cache pollution filtering mechanism for aggressive prefetches. In: Proc 32nd Int Conf Parallel Process, pp. 286–293 Kani CHEN, Zhezhen JIN (2005) Local polynomial regression analysis of clustered data. Biometrika 92(1):59–74 Ostertagov Eva (2012) Modelling using polynomial regression. Proc Eng 48(1):500–506 Mosteller F, Tukey JW (1977) Data analysis and regression: a second course in statistics. Addison-Wesley, Reading, MA Gelman A, Hill J (2006) Data analysis using regression and multilevel/hierarchical models. Cambridge University Press, Cambridge Caruana R, Niculescu-Mizil A (2006) An empirical comparison of supervised learning algorithms. In: ICML, pp. 161-168 Peters G, Wilkinson JH (1975) On the stability of Gauss-Jordan elimination with pivoting. Commun ACM 18:20–24 Renzo Angles, János Benjamin Antal, et al (2020) “The LDBC Social Network Benchmark (version 0.3.3)”, CoRR abs/2001.02299 Nai Lifeng, Xia Yinglong et al (2015) GraphBIG: understanding graph computing in the context of industrial solutions. In: SC ’15: Proceedings of the International Conference for High Performance Computing. Networking, Storage and Analysis Luk C-K et al (2005) Pin: building customized program analysis tools with dynamic instrumentation. In: Proc. ACM SIGPLAN Conf. Program. Language Des. Implementation, pp. 190–200 (2005) Chen S, Gibbons PB, and Nath S (2011) Rethinking database algorithms for phase change memory. In: Proc. CIDR, pp. 21–31 Park KH et al (2010) Mn-mate: Resource management of many cores with dram and non-volatile memories. In: Proc. 12th IEEE Int. Conf. HPCC, Sep., pp. 24–34 Qureshi M and Karidis J (2009) Enhancing lifetime and security of pcm-based main memory with start-gap wear leveling. In: Proc. 42nd Annu. IEEE/ACM Int. Symp. Microarchit., pp. 14–23