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

Jing Zhao updated HDFS-2421:
----------------------------

    Attachment: performance_SerialNumberManager.png
                TestSerialNumberManager.java
                HDFS-2421.patch

Write a simple test program to compare the two programs: ConcurrentHashMap vs. 
HashMap + synchronized. The TestSerialNumberManager.java is the test code. The 
ConcurrentHashMap version changes the original synchronization semantic, but 
seems fine if every thread is generating serial number for different names.

A simple performance measurement is included (results are in milliseconds). For 
both read and write, every thread is doing 
10000 sets of r/w operations, and I tested scenarios with 10, 20, 50, and 100 
threads. The test is on a MAC with 8G memory and a 2.2 GHz i7 processor.

                
> Improve the concurrency of  SerialNumberMap in NameNode
> -------------------------------------------------------
>
>                 Key: HDFS-2421
>                 URL: https://issues.apache.org/jira/browse/HDFS-2421
>             Project: Hadoop HDFS
>          Issue Type: Improvement
>          Components: name-node
>            Reporter: Hairong Kuang
>            Assignee: Weiyan Wang
>             Fix For: 0.24.0
>
>         Attachments: HDFS-2421.patch, performance_SerialNumberManager.png, 
> TestSerialNumberManager.java
>
>
> After enabled permission checking in our HDFS test cluster, our benchmark 
> observed a significant reduced concurrency in NameNode. Investigation showed 
> that most threads were blocked at acquiring the lock of 
> org.apache.hadoop.hdfs.server.namenode.SerialNumberManager$SerialNumberMap. 
> We used concurrentHashMap to replace Hashmap + synchronized methods, which 
> greatly improved the situation.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to