You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@beam.apache.org by "Kenneth Knowles (Jira)" <ji...@apache.org> on 2021/10/20 18:00:00 UTC

[jira] [Commented] (BEAM-13073) Unexpected GC when using Java 11

    [ https://issues.apache.org/jira/browse/BEAM-13073?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17431396#comment-17431396 ] 

Kenneth Knowles commented on BEAM-13073:
----------------------------------------

Yea this looks like another consequence of BEAM-10222. The JDK getAvailableProcessors is wrong (I read the code a while ago and it doesn't really make sense) so it probably thinks there is just one CPU so parallel GC won't be efficient.

> 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
>            Assignee: Kenneth Knowles
>            Priority: P2
>              Labels: java11, java9, performance
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> 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)