Quarkus Native 采用 Adaptive GC 策略

从 Quarkus 2.13.6.Final 开始,本机Native运行时垃圾收集策略已切换,以提供更一致和可预测的运行时性能。 在 2022 年的某个时候,在进行一些本机运行时性能基准测试时,我们观察到,在恒定负载纯文本基准测试中,内存消耗会持续增长,直到达到 500MB 左右,然后才会下降: 小型垃圾收集经常发生,但这些收集无法完全收集所有垃圾。 这种未收集的垃圾将继续增长,直到达到...

从 Quarkus 2.13.6.Final 开始,Quarkus 原生应用程序的 GC 策略切换为“自适应”,以提供更一致和可预测的运行时性能。在 2022 年,发现内存消耗会持续增长,直到达到 500MB 左右,原因是 Quarkus 指示 GraalVM 使用“按空间和时间”GC 策略,该策略实现了一种shouldCollectCompletely方法,当使用的堆超过最小堆大小时,会执行完整 GC。删除 GC 策略配置调整后,“自适应”GC 策略获得几乎相同的吞吐量,并且内存消耗减少近 50%,因此成为 Quarkus 的默认策略。

gc
原文中文,约2100字,阅读约需5分钟。发表于:
阅读原文