0

I am using Shenandoah GC and using Java 8

"-XX:+UseShenandoahGC -XX:+UnlockExperimentalVMOptions -XX:+AlwaysPreTouch -XX:+UseNUMA -XX:-UseBiasedLocking -XX:+UseLargePages -XX:ShenandoahGCHeuristics=compact -XX:+ClassUnloadingWithConcurrentMark -Xloggc:/LOGS/CAS/gclog -XX:ShenandoahAllocationThreshold=20"

with this average pause time is 8 ms but max pause time is 160 ms. I dont want pause time to go beyond 25 ms. Is there any parameter to set which ensures that pause time shouldnt be go beyond it ?

Please help and suggest

dan1st
  • 12,568
  • 8
  • 34
  • 67
VJS
  • 2,891
  • 7
  • 38
  • 70
  • Do you get different pause times with `-XX:ShenandoahGCHeuristics=aggressive`? (Do not use that for production) Does `-XX:-ShenandoahDegeneratedGC` change anything? – dan1st Jan 21 '23 at 19:58
  • If `-XX:ShenandoahGCHeuristics=aggressive` does "help", you might want to try reducing the `-XX:ShenandoahAllocationThreshold` (with `-XX:ShenandoahGCHeuristics=compact`). Also, did you try removing options like `-XX:+ClassUnloadingWithConcurrentMark` and checking the results? While I don't know about specific options for ensuring pause times lower than a specific value, you might be able to do other tweaks (or try using a newer Java version). – dan1st Jan 21 '23 at 20:03
  • You should post some log excerpts that show long pause events. – the8472 Feb 14 '23 at 10:37
  • "with this average pause time is 8 ms but max pause time is 160 ms", where are the verbose logs? – Eugene Apr 05 '23 at 08:02

0 Answers0