You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "Gabor Gevay (JIRA)" <ji...@apache.org> on 2016/08/25 10:06:21 UTC

[jira] [Comment Edited] (FLINK-3322) MemoryManager creates too much GC pressure with iterative jobs

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

Gabor Gevay edited comment on FLINK-3322 at 8/25/16 10:05 AM:
--------------------------------------------------------------

I think it would be very good to finally solve this issue! Iteration is supposed to be a strong point of Flink, but this issue can seriously hurt the performance of some iterative jobs, where there are many iteration steps, but little work in a single step (which can easily happen towards the end of delta iterations).


was (Author: ggevay):
I think it would be very good to finally solve this issue! Iteration is supposed to be a strong point of Flink, but this issue can seriously hurt the performance of some iterative jobs, where there are many iterations, but little work in each iteration (which can easily happen towards the end of delta iterations).

> MemoryManager creates too much GC pressure with iterative jobs
> --------------------------------------------------------------
>
>                 Key: FLINK-3322
>                 URL: https://issues.apache.org/jira/browse/FLINK-3322
>             Project: Flink
>          Issue Type: Bug
>          Components: Local Runtime
>    Affects Versions: 1.0.0
>            Reporter: Gabor Gevay
>            Priority: Critical
>             Fix For: 1.0.0
>
>
> When taskmanager.memory.preallocate is false (the default), released memory segments are not added to a pool, but the GC is expected to take care of them. This puts too much pressure on the GC with iterative jobs, where the operators reallocate all memory at every superstep.
> See the following discussion on the mailing list:
> http://apache-flink-mailing-list-archive.1008284.n3.nabble.com/Memory-manager-behavior-in-iterative-jobs-tt10066.html
> Reproducing the issue:
> https://github.com/ggevay/flink/tree/MemoryManager-crazy-gc
> The class to start is malom.Solver. If you increase the memory given to the JVM from 1 to 50 GB, performance gradually degrades by more than 10 times. (It will generate some lookuptables to /tmp on first run for a few minutes.) (I think the slowdown might also depend somewhat on taskmanager.memory.fraction, because more unused non-managed memory results in rarer GCs.)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)