OPTIMISATION OF THE PROCESS OF SEARCHING FOR MEMORY SEGMENTS: MATHEMATICAL MODELLING AND EXPERIMENTAL EVALUATION OF THE COMPLETENESS OF INFORMATION CONTENT WITH FIXED MEMORY VOLUMES
DOI:
https://doi.org/10.34185/1991-7848.itmm.2025.01.122Keywords:
memory optimisation, compression algorithms, byte[] array, memory snapshot, excessive memory usage, mathematical modelling, ClrMD, LZ4, resource management, high-load systems.Abstract
The paper investigates the problem of excessive use of RAM in software systems, in particular when storing data in the form of System.Byte[] arrays. In conditions of limited resources and high loads, there is a need for efficient use of available memory without involving additional computing power. The paper proposes a mathematical model based on the analysis of memory snapshots and a methodology for determining arrays with low information density that are candidates for compression. To reduce the amount of memory occupied, the LZ4 algorithm is used, which ensures the preservation of information content while reducing the physical size of arrays. The study was implemented on the .NET platform using the ClrMD library for software analysis of memory snapshots. A series of experiments on snapshots of industrial systems have been conducted to confirm the effectiveness of the proposed approach: reducing the memory size by up to 45% for individual arrays without data loss. The results indicate the feasibility of implementing such solutions to improve system performance and reduce infrastructure costs. The scientific contribution is the development of a new metric for evaluating compression efficiency and a recommendation system for detecting excessive memory consumption in managed runtime environments.
References
Gregg, B. (2021). Scaling solutions (Sec. 2.7.3, p. 929). In Systems Performance (2nd ed.). Boston, MA: Addison-Wesley.
Bentley, J. L. (1982). Writing efficient programs. Englewood Cliffs, NJ: Prentice-Hall.
Efficiently and precisely locating memory leaks and bloat. Gene Novark, Emery D. Berger, Benjamin G. Zorn. Dublin : Proceedings of the 30th ACM SIGPLAN Conference on Programming Language Design and Implementation, 2009. 978-1-60558-392-1.
Analyzing Data Structure Growth Over Time to Facilitate Memory Leak Detection. Weninger, Markus. Mumbai : Association for Computing Machinery, 2019. 978-1-4503-6239-9.
Understanding and Combating Memory Bloat in Managed. Khanh Nguyen, Kai Wang, Yingyi Bu, Lu Fang, and Guoqing Xu. 4, University of California, Irvine : Athens Information Technology, 2018 p., Т. 26. https://doi.org/10.1145/3162626.
Lee, S. (2015). Mitigating the performance impact of memory bloat [Doctoral dissertation, Georgia Institute of Technology]. Georgia Tech Institutional Repository. http://hdl.handle.net/1853/56174
Xia, Q., Ji, H., Zhou, Y., & Kim, N. S. (2025). Hardware-accelerated kernel-space memory compression using Intel QAT. IEEE Computer Architecture Letters, 24(1), 57–60. https://doi.org/10.1109/LCA.2025.3534831
Tsai, P.-A., & Sánchez, D. (2019, April). Compress objects, not cache lines: An object-based compressed memory hierarchy. In Proceedings of the Twenty-Fourth International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS 2019) (pp. 229–242). Association for Computing Machinery. https://doi.org/10.1145/3297858.330400
Mitikov, N. Y., & Guk, N. A. (2023). Identification of problems in software operation based on the analysis of memory snapshots. Issues of applied mathematics and mathematical modelling, (18), 171–178. https://doi.org/10.15421/322318 [Ukrainian]
Lou, C., Chen, C., Huang, P., Dang, Y., Qin, S., Yang, X., Li, X., Lin, Q., & Chintalapati, M. (2022, July). RESIN: A holistic service for dealing with memory leaks in production cloud infrastructure. In M. K. Aguilera & H. Weatherspoon (Eds.), Proceedings of the 16th USENIX Symposium on Operating Systems Design and Implementation (OSDI ’22) (pp. 109–125). USENIX Association. ISBN 978-1-939133-28-1
Ioannis T. Christou, Sofoklis Efremidis. To Pool or Not To Pool? Revisiting an Old Pattern. Marousi : Athens Information Technology, 2018. arXiv:1801.03763.