You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@thrift.apache.org by "David Reiss (JIRA)" <ji...@apache.org> on 2010/01/22 00:12:54 UTC

[jira] Commented: (THRIFT-685) Direct buffer access to improve deserialization performance

    [ https://issues.apache.org/jira/browse/THRIFT-685?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12803530#action_12803530 ] 

David Reiss commented on THRIFT-685:
------------------------------------

+1.  The template code that Chad and I worked on for C\+\+ (almost ready for trunk) gets the complier to do something similar for us, and we saw a really significant boost.

> Direct buffer access to improve deserialization performance
> -----------------------------------------------------------
>
>                 Key: THRIFT-685
>                 URL: https://issues.apache.org/jira/browse/THRIFT-685
>             Project: Thrift
>          Issue Type: Improvement
>          Components: Library (Java)
>            Reporter: Bryan Duxbury
>            Assignee: Bryan Duxbury
>            Priority: Minor
>             Fix For: 0.3
>
>
> After poking around a bit and comparing how Thrift performs versus Protocol Buffers, I think we should change our transports and protocols to support optional direct buffer access behavior. 
> Basically, the way this works is that if the transport is backed by a buffer, then it can give access to that buffer to the protocol. The protocol can then do things like read a byte without instantiating a new one-byte array or decode a string without an intermediate byte[] copy. 
> In my initial testing, we can reduce the amount of time it takes to deserialize a struct by at least 25%. There are probably further gains to be had as well. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.