Комплексное исследование влияния параметров G1 Garbage Collector на производительность и стабильность JVM
Работая с нашим сайтом, вы даете свое согласие на использование файлов cookie. Это необходимо для нормального функционирования сайта, показа целевой рекламы и анализа трафика. Статистика использования сайта отправляется в «Яндекс» и «Google»
Научный журнал Моделирование, оптимизация и информационные технологииThe scientific journal Modeling, Optimization and Information Technology
Online media
issn 2310-6018

A comprehensive analysis of the impact of G1 Garbage Collector parameters on JVM performance and stability

Zolotukhina D.Y. 

UDC 004.4
DOI: 10.26102/2310-6018/2024.47.4.039

  • Abstract
  • List of references
  • About authors

The relevance of thе study is determined by the necessity of improving memory management efficiency in high-load Java applications, where minimizing garbage collection pauses and maintaining high throughput are critically important tasks. This article aims to systematically investigate the parameter space of the G1 Garbage Collector (G1 GC) and develop practical recommendations for its optimization under high-load conditions. The primary research method is an empirical approach, which involves the development of a multithreaded Java application capable of generating sustained memory and CPU loads. The study utilized a control and six experimental G1 GC configurations, differing in parameters such as heap region size, heap occupancy threshold, maximum pause duration, young region size, the number of GC threads, and the activation of Periodic GC. Key metrics, including pause durations, GC frequency, throughput, and freed memory volume, were measured, visualized, and systematically analyzed using the GCViewer tool. The article presents recommendations for G1 GC optimization, highlights the advantages of reallocating memory toward young regions and enabling Periodic GC, and identifies the limitations of the MaxGCPauseMillis parameter in aggressive configurations. The findings have practical value for developers of high-load applications requiring low latency and high system stability. The conclusions contribute to a deeper understanding of G1 GC functionality and can serve as a foundation for further research in JVM memory management.

1. Sihan W. Java Garbage Collectors. International Journal of Open Information Technologies. 2022;10(6):57–61.

2. Zhao W., Blackburn S.M. Deconstructing the garbage-first collector. In: VEE '20: Proceedings of the 16th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments, 17 March 2020, Lausanne, Switzerland. New York: Association for Computing Machinery; 2020. pp. 15–29. https://doi.org/10.1145/3381052.3381320

3. Anikin D.A. Advantages of automated memory management on the example of Java Hotspot. Stolypin Annals. 2022;4(9). (In Russ.). URL: https://stolypin-vestnik.ru/wp-content/uploads/2022/11/10-3.pdf

4. Nisbet A., Nobre N.M., Riley G., Luján M. Profiling and Tracing Support for Java Applications. In: ICPE '19: Proceedings of the 2019 ACM/SPEC International Conference on Performance Engineering, 07–11 April 2019, Mumbai, India. New York: Association for Computing Machinery; 2019. pp. 119–126. https://doi.org/10.1145/3297663.3309677

5. Bruno R., Ferreira P. A Study on Garbage Collection Algorithms for Big Data Environments. ACM Computing Surveys. 2019;51(1). https://doi.org/10.1145/3156818

6. Pufek P., Grgić H., Mihaljević B. Analysis of Garbage Collection Algorithms and Memory Management in Java. In: 2019 42nd International Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO), 20–24 May 2019, Opatija, Croatia. IEEE; 2019. pp. 1677–1682. https://doi.org/10.23919/MIPRO.2019.8756844

7. Nalivaiko A.S. Rekomendatsii po optimizatsii potrebleniya pamyati v Java. Molodoi uchenyi. 2020;(24):59–63. (In Russ.).

8. Prozorova A.P., Vershinin E.V., Potapova A.E. Impact on the performance of an application with a small amount of memory and the use of Garbage Collector (GC). Elektronnyi zhurnal: nauka, tekhnika i obrazovanie. 2019;(1):55–61. (In Russ.).

9. Petrov I.A. Object Memory Verification in Virtual Machines. Modern Information Technologies and IT-Education. 2021;17(3):603–612. (In Russ.). https://doi.org/10.25559/SITITO.17.202103.603-612

10. Filatov A.Yu., Mikheev V.V. Application of Thread-Local Garbage Collection to Distributed Systems for Large-Scale Data Processing. Vestnik SibGUTI. 2022;(1):77–88. (In Russ.). https://doi.org/10.55648/1998-6920-2022-16-1-77-88

Zolotukhina Daria Yurevna

Financial Corporation Otkritie

Voronezh, Russian Federation

Keywords: g1 garbage collector, memory management, jvm optimization, high-load applications, gc parameter tuning, throughput, pause duration, garbage collection, young memory regions, java application performance

For citation: Zolotukhina D.Y. A comprehensive analysis of the impact of G1 Garbage Collector parameters on JVM performance and stability. Modeling, Optimization and Information Technology. 2024;12(4). URL: https://moitvivt.ru/ru/journal/pdf?id=1774 DOI: 10.26102/2310-6018/2024.47.4.039 (In Russ).

52

Full text in PDF

Received 16.12.2024

Revised 23.12.2024

Accepted 26.12.2024

Published 31.12.2024