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

ASF GitHub Bot commented on FLINK-2653:
---------------------------------------

Github user greghogan commented on the pull request:

    https://github.com/apache/flink/pull/1115#issuecomment-139558118
  
    Stephan, while looking for the `UnionWithTempOperator` bug elsewhere, I 
noticed that `AllReduceDriver.run()`, `ReduceDriver.run()`, and 
`ReduceCombinerDriver.sortAndCombine()` locally create new objects before every 
call to `MutableObjectIterator.next(T)`. This looks to be double allocating new 
objects in the case that the `TypeSerializer` does not support object reuse.
    
    Also, `ReduceCombinerDriver.sortAndCombine.run()` is not switching on 
`objectReuseEnabled`.


> Enable object reuse in MergeIterator
> ------------------------------------
>
>                 Key: FLINK-2653
>                 URL: https://issues.apache.org/jira/browse/FLINK-2653
>             Project: Flink
>          Issue Type: Improvement
>          Components: Distributed Runtime
>    Affects Versions: master
>            Reporter: Greg Hogan
>
> MergeIterator currently discards given reusable objects and simply returns a 
> new object from the JVM heap. This inefficiency has a noticeable impact on 
> garbage collection and runtime overhead (~5% overall performance by my 
> measure).



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

Reply via email to