[ 
https://issues.apache.org/jira/browse/HDFS-1061?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12849324#action_12849324
 ] 

Bharath Mundlapudi commented on HDFS-1061:
------------------------------------------

Storing exponents is a good suggestion and i thought about this but didn't 
suggest for the following reasons
1. storing and retrieving need more cpu cycles for the computation. 
2. didn't want to assume power of n.
3. unless we are saving another 8 bytes for byte alignment or else even with 1 
byte we will be forced to use 8 byte on 64-bit JVM.
4. I believe, ext3 and ext4 file systems uses 32 bit and 64 bit block 
addressing respectively so i thought 40 bit (1TB) probably good enough for HDFS 
block size. Note that for my proposal, we could go for 48 bit preferred block 
size and 16 bit replication which may not be required and also won't give any 
extra bits for storing meta data in future if we want to.  





> Memory footprint optimization for INodeFile object. 
> ----------------------------------------------------
>
>                 Key: HDFS-1061
>                 URL: https://issues.apache.org/jira/browse/HDFS-1061
>             Project: Hadoop HDFS
>          Issue Type: Improvement
>          Components: name-node
>    Affects Versions: 0.22.0
>            Reporter: Bharath Mundlapudi
>            Priority: Minor
>             Fix For: 0.22.0
>
>
> I am proposing a footprint optimization to merge blockReplication and 
> preferredBlockSize fields into one 'long header' field in INodeFile class. 
> This saves 8 bytes per INodeFile object on a 64 bit JVM. This memory 
> optimization is transparent and changes are very minimal.

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

Reply via email to