Abstract
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.
Similar content being viewed by others
References
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
Acknowledgements
This work has supported by the National Research Foundation of Korea (NRF) grant funded by the Korea government (MSIT) (No. 2019R1A2C1008716). We would like to thank Editage (www.editage.co.kr) for English language editing.
Author information
Authors and Affiliations
Corresponding author
Ethics declarations
Conflict of interest
The authors declare that they have no conflict of interest.
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
About this article
Cite this article
Zhang, M., Kim, JG., Yoon, SK. et al. Dynamic recognition prefetch engine for DRAM-PCM hybrid main memory. J Supercomput 78, 1885–1902 (2022). https://doi.org/10.1007/s11227-021-03948-5
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11227-021-03948-5