Hide metadata

dc.date.accessioned2024-03-03T17:45:55Z
dc.date.available2024-03-03T17:45:55Z
dc.date.created2023-09-20T15:10:54Z
dc.date.issued2023
dc.identifier.citationTavakolisomeh, Sanaz Bruno, Rodrigo Ferreira, Paulo . BestGC: An Automatic GC Selector. IEEE Access. 2023, 11, 72357-72373
dc.identifier.urihttp://hdl.handle.net/10852/108937
dc.description.abstractGarbage collection algorithms are widely used in programming languages like Java. However, selecting the most suitable garbage collection (GC) algorithm for an application is a complex task since they behave differently regarding crucial performance metrics such as garbage collection pause time, application throughput, and memory usage. This challenge is particularly more complicated as there is currently no available tool to assist users/developers in this critical decision-making process. In this paper, we address this pressing need by conducting an extensive evaluation of four widely used GCs (G1, Parallel, Shenandoah, and ZGC) in OpenJDK, considering application throughput, GC pause time, and various heap sizes. Building upon this evaluation, we present BestGC, a novel system that suggests the most suitable GC solution based on user-defined performance goals in terms of application throughput and GC pause time. Our evaluation of BestGC using multiple workloads demonstrates its effectiveness in suggesting the most suitable GC category (concurrent or generational/non-fully concurrent GC) in approximately 86% of the experiments on average. Additionally, BestGC accurately identifies the best GC in approximately 52% of the cases on average. Even in situations where BestGC failed to suggest the exact best GC or GC category, the suggested GC still outperforms the default GC (G1) in the JDK, exhibiting an average improvement of 1.75%. Notably, BestGC is designed to be easily extensible, facilitating its compatibility with other JDK versions, as well as new GCs and heap sizes. By addressing the lack of a practical tool to aid in GC selection, our research makes a significant contribution to the field of performance optimization in Java applications.
dc.languageEN
dc.rightsAttribution 4.0 International
dc.rights.urihttps://creativecommons.org/licenses/by/4.0/
dc.titleBestGC: An Automatic GC Selector
dc.title.alternativeENEngelskEnglishBestGC: An Automatic GC Selector
dc.typeJournal article
dc.creator.authorTavakolisomeh, Sanaz
dc.creator.authorBruno, Rodrigo
dc.creator.authorFerreira, Paulo
cristin.unitcode185,15,5,27
cristin.unitnameProgrammeringsteknologi
cristin.ispublishedtrue
cristin.fulltextpreprint
cristin.qualitycode1
dc.identifier.cristin2177221
dc.identifier.bibliographiccitationinfo:ofi/fmt:kev:mtx:ctx&ctx_ver=Z39.88-2004&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.jtitle=IEEE Access&rft.volume=11&rft.spage=72357&rft.date=2023
dc.identifier.jtitleIEEE Access
dc.identifier.volume11
dc.identifier.startpage72357
dc.identifier.endpage72373
dc.identifier.doihttps://doi.org/10.1109/ACCESS.2023.3294398
dc.type.documentTidsskriftartikkel
dc.type.peerreviewedPeer reviewed
dc.source.issn2169-3536
dc.type.versionPublishedVersion


Files in this item

Appears in the following Collection

Hide metadata

Attribution 4.0 International
This item's license is: Attribution 4.0 International