hadoop-mapreduce-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Chris Douglas (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (MAPREDUCE-5821) IFile merge allocates new byte array for every value
Date Wed, 14 May 2014 17:53:19 GMT

     [ https://issues.apache.org/jira/browse/MAPREDUCE-5821?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Chris Douglas updated MAPREDUCE-5821:
-------------------------------------

       Resolution: Fixed
    Fix Version/s: 2.4.1
                   2.5.0
                   3.0.0
     Hadoop Flags: Reviewed
           Status: Resolved  (was: Patch Available)

I committed this. Thanks, Todd

> IFile merge allocates new byte array for every value
> ----------------------------------------------------
>
>                 Key: MAPREDUCE-5821
>                 URL: https://issues.apache.org/jira/browse/MAPREDUCE-5821
>             Project: Hadoop Map/Reduce
>          Issue Type: Bug
>          Components: performance, task
>    Affects Versions: 2.4.1
>            Reporter: Todd Lipcon
>            Assignee: Todd Lipcon
>             Fix For: 3.0.0, 2.5.0, 2.4.1
>
>         Attachments: after-patch.png, before-patch.png, mapreduce-5821.txt, mapreduce-5821.txt
>
>
> I wrote a standalone benchmark of the MapOutputBuffer and found that it did a lot of
allocations during the merge phase. After looking at an allocation profile, I found that IFile.Reader.nextRawValue()
would always allocate a new byte array for every value, so the allocation rate goes way up
during the merge phase of the mapper. I imagine this also affects the reducer input, though
I didn't profile that.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Mime
View raw message