Luis created BEAM-13073:
---------------------------

             Summary: Unexpected GC when using Java 11
                 Key: BEAM-13073
                 URL: https://issues.apache.org/jira/browse/BEAM-13073
             Project: Beam
          Issue Type: Bug
          Components: sdk-java-harness
            Reporter: Luis


Beam SDK has been supporting Java 11 for a while (I guess the support was 
introduced here https://issues.apache.org/jira/browse/BEAM-2530). 
Unfortunately, in Spotify we are still experiencing performance issues when 
using Beam SDK 2.32, Google Dataflow and Java 11.

Thanks to [~emilyye] and [~iht], they confirmed JVM 11 is using SerialGC, while 
Java 8 uses ParallelGC. It sound like SerialGC a good option for high 
throughput / low latency jobs. For Java11 we'd expect to use G1GC or ParallelGC.

This SO question [1] clarifies that JVM choses SerialGC when it treats the 
machine as a "client". It looks like the Java SDK container could benefit from 
using `-XX:+AlwaysActAsServerClassMachine`. Is that correct?

Let me know if the ticket needs further context or adjustment. (It is my first 
time creating a ticket here).

 [1] 
https://stackoverflow.com/questions/52474162/why-is-serialgc-chosen-over-g1gc



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to