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 2009/07/29 22:54:15 UTC

[jira] Commented: (THRIFT-115) Isset structure has a large memory footprint

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

David Reiss commented on THRIFT-115:
------------------------------------

FWIW, I prefer not to have Thrift reimplement things that are available in the standard library.  Is there any way to use the standard version when using a normal JVM and only switch to the custom version when we are using GWT?

> Isset structure has a large memory footprint
> --------------------------------------------
>
>                 Key: THRIFT-115
>                 URL: https://issues.apache.org/jira/browse/THRIFT-115
>             Project: Thrift
>          Issue Type: Improvement
>          Components: Library (Java)
>            Reporter: Bryan Duxbury
>            Assignee: Bryan Duxbury
>            Priority: Minor
>             Fix For: 0.2
>
>         Attachments: thrift-115-v2.patch, thrift-115-v3.patch, thrift-115-v4.patch, thrift-115.patch
>
>
> My understanding is that in Java, booleans stored individually (that is, outside an array) take up the same space as an int in the host JVM. This means that they might take up to 4 bytes each! As a result, the Isset classes internal to generated structs consume a considerable quantity of memory.
> Boolean arrays in Java shrink each element to a byte, which would be an improvement. We could go even further and use a bit field and pack all the isset values into a few bytes. This could shave a considerable bit of the memory footprint.

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