Predicting JVM Parameters for Performance Tuning Using Different Regression Algorithms

The Java Virtual Machine provides runtime environment to java program. It is responsible for loading class files, checking the code, interpreting them, and executing them. Whereas application is run as a thread inside the JVM. The garbage collector thread is launched by the JVM (when possible or nec...

Full description

Saved in:
Bibliographic Details
Published in:2022 Fourth International Conference on Emerging Research in Electronics, Computer Science and Technology (ICERECT) pp. 1 - 8
Main Authors: Vijayakumar, G., Bharathi, R.K.
Format: Conference Proceeding
Language:English
Published: IEEE 26-12-2022
Subjects:
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:The Java Virtual Machine provides runtime environment to java program. It is responsible for loading class files, checking the code, interpreting them, and executing them. Whereas application is run as a thread inside the JVM. The garbage collector thread is launched by the JVM (when possible or necessary) without the user's intervention in order to free up utilized, unreferenced memory. In order to optimize memory and garbage collection settings and to troubleshoot memory-related problems, one has to analyze Garbage Collection logs. An application's overall performance while it is running is significantly impacted by garbage collection, an automated memory management system is vital for Java Virtual Machine (JVM). The Java Development Kit offers a number of garbage collectors from which the developer may choose while setting up the environment. There are several different kinds of garbage collectors, including Serial GC, Parallel GC, Z GC, and Garbage First GC. We investigate the operation of the GC in a defined environment, with the focus on serial and parallel GC. Throughput and latency are the main performance indicators used in the study. The findings of the study demonstrate that different applications need different garbage collector configurations. It is possible to improve latency levels. This study also demonstrates how GC parameters, namely adjusting the heap size and number of threads, will impact the performance and latency of an application, how different regression algorithms better suited for different use cases. This study will also investigate the effects of a set of optional GC settings in addition to the default setups on application performance, which is another part of its contribution. Finally, we will be able to anticipate the appropriate heap size needed for the applications smooth functioning, the required application duration, and the quantity of GC and Full GC events during the application's runtime. In summary we predict the parameters using three different regression algorithms, namely Huber, Tweedie & SGD through which, we can optimize the performance of java application by analyzing the performance of GC working methodology.
DOI:10.1109/ICERECT56837.2022.10060788