hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Anoop Sam John (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-15491) Reuse byte buffers in AsyncRpcClient
Date Mon, 21 Mar 2016 02:56:33 GMT

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

Anoop Sam John commented on HBASE-15491:
----------------------------------------

Why we have a putBuffer() call in IPCUtil itself?  Can we avoid the special casing?  I mean
handle the put back to pool in one place
So this will reduce lots of garbage and so the frequency of young GC.   You observed the GC
after this?  Will it increase the avg young GC pause time?

> Reuse byte buffers in AsyncRpcClient
> ------------------------------------
>
>                 Key: HBASE-15491
>                 URL: https://issues.apache.org/jira/browse/HBASE-15491
>             Project: HBase
>          Issue Type: Improvement
>          Components: Client
>    Affects Versions: 2.0.0
>            Reporter: Vladimir Rodionov
>            Assignee: Vladimir Rodionov
>             Fix For: 2.0.0
>
>         Attachments: HBASE-15491-v1.patch
>
>
> IPCUtil.buildCellBlock is used by both server and client. Server provides BoundedByteBufferPool
for buffers reuse, client code does not do that. This results in additional memory pressure
on a client side, because buffers are allocated on every call to IPCUtil.buildCellBlock.
> My own local tests (with patch) show approximately 8-10% reduction in object allocation
rate on a client side (with HBASE-15479 as well). 



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

Mime
View raw message