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

Renukaprasad C edited comment on HDFS-14703 at 5/17/21, 10:56 AM:
------------------------------------------------------------------

Thanks [~shv] & [~xinglin]
 We have tested on 48 Core physical machine & could see significant performance 
improvement with the patch.
 On average improvement is +*around 30%*+ with default storage policy.
||Itr||Base||Patch||
|ITR-1|56439|66622|
|ITR-2|58092|65074|
|ITR-3|60132|74354|
|ITR-4|52056|76522|
|ITR-5|55478|65526|
|ITR-6|60664|76881|
|AVG|56066|72976|

h3. +Improvement 30.16+ 

Attached few results:
{code:java}
BASE:
common/hadoop-hdfs-32021-05-17 11:17:36,973 INFO 
namenode.NNThroughputBenchmark: --- mkdirs inputs ---
2021-05-17 11:17:36,973 INFO namenode.NNThroughputBenchmark: nrDirs = 1000000
2021-05-17 11:17:36,973 INFO namenode.NNThroughputBenchmark: nrThreads = 200
2021-05-17 11:17:36,973 INFO namenode.NNThroughputBenchmark: nrDirsPerDir = 32
2021-05-17 11:17:36,973 INFO namenode.NNThroughputBenchmark: --- mkdirs stats  
---
2021-05-17 11:17:36,973 INFO namenode.NNThroughputBenchmark: # operations: 
1000000
2021-05-17 11:17:36,973 INFO namenode.NNThroughputBenchmark: Elapsed Time: 17718
2021-05-17 11:17:36,973 INFO namenode.NNThroughputBenchmark:  Ops per sec: 
56439.77875606727
2021-05-17 11:17:36,973 INFO namenode.NNThroughputBenchmark: Average Time: 3
2021-05-17 11:17:36,973 INFO namenode.FSEditLog: Ending log segment 1, 1031254

PATCH:
2021-05-17 11:11:09,321 INFO namenode.NNThroughputBenchmark: --- mkdirs inputs 
---
2021-05-17 11:11:09,321 INFO namenode.NNThroughputBenchmark: nrDirs = 1000000
2021-05-17 11:11:09,321 INFO namenode.NNThroughputBenchmark: nrThreads = 200
2021-05-17 11:11:09,321 INFO namenode.NNThroughputBenchmark: nrDirsPerDir = 32
2021-05-17 11:11:09,321 INFO namenode.NNThroughputBenchmark: --- mkdirs stats  
---
2021-05-17 11:11:09,321 INFO namenode.NNThroughputBenchmark: # operations: 
1000000
2021-05-17 11:11:09,321 INFO namenode.NNThroughputBenchmark: Elapsed Time: 15010
2021-05-17 11:11:09,321 INFO namenode.NNThroughputBenchmark:  Ops per sec: 
66622.25183211193
2021-05-17 11:11:09,321 INFO namenode.NNThroughputBenchmark: Average Time: 2
2021-05-17 11:11:09,331 INFO namenode.FSEditLog: Ending log segment 1, 1031254

{code}
Command: ./hadoop jar 
../share/hadoop/common/hadoop-hdfs-3.1.1-hw-ei-SNAPSHOT-tests.jar 
org.apache.hadoop.hdfs.server.namenode.NNThroughputBenchmark -fs [file:///] -op 
mkdirs -threads 200 -dirs 1000000 -dirsPerDir 32

Hw configuration:
 Architecture: x86_64
 CPU op-mode(s): 32-bit, 64-bit
 CPU(s): 48
 On-line CPU(s) list: 0-47
 Thread(s) per core: 2
 Core(s) per socket: 12
 Socket(s): 2
 NUMA node(s): 2
 Vendor ID: GenuineIntel
 CPU family: 6
 Model: 63
 Model name: Intel(R) Xeon(R) CPU E5-2690 v3 @ 2.60GHz
 Stepping: 2
 CPU MHz: 2600.406
 CPU max MHz: 3500.0000
 CPU min MHz: 1200.0000
 BogoMIPS: 5189.51
 Virtualization: VT-x
 L1d cache: 32K
 L1i cache: 32K
 L2 cache: 256K
 L3 cache: 30720K
 NUMA node0 CPU(s): 0-11,24-35
 NUMA node1 CPU(s): 12-23,36-47


was (Author: prasad-acit):
Thanks [~shv] & [~xinglin]
I have tested on 48 Core physical machine & could see significant performance 
improvement with the patch.
On average improvement is around 30% with default storage policy.

        Base    Patch
ITR-1   56439   66622
ITR-2   58092   65074
ITR-3   60132   74354
ITR-4   52056   76522
ITR-5   55478   65526
ITR-6   60664   76881
AVG     56066   72976.33333
                
Improvement     30.16147636     


Attached few results:

{code:java}
BASE:
common/hadoop-hdfs-32021-05-17 11:17:36,973 INFO 
namenode.NNThroughputBenchmark: --- mkdirs inputs ---
2021-05-17 11:17:36,973 INFO namenode.NNThroughputBenchmark: nrDirs = 1000000
2021-05-17 11:17:36,973 INFO namenode.NNThroughputBenchmark: nrThreads = 200
2021-05-17 11:17:36,973 INFO namenode.NNThroughputBenchmark: nrDirsPerDir = 32
2021-05-17 11:17:36,973 INFO namenode.NNThroughputBenchmark: --- mkdirs stats  
---
2021-05-17 11:17:36,973 INFO namenode.NNThroughputBenchmark: # operations: 
1000000
2021-05-17 11:17:36,973 INFO namenode.NNThroughputBenchmark: Elapsed Time: 17718
2021-05-17 11:17:36,973 INFO namenode.NNThroughputBenchmark:  Ops per sec: 
56439.77875606727
2021-05-17 11:17:36,973 INFO namenode.NNThroughputBenchmark: Average Time: 3
2021-05-17 11:17:36,973 INFO namenode.FSEditLog: Ending log segment 1, 1031254

PATCH:
2021-05-17 11:11:09,321 INFO namenode.NNThroughputBenchmark: --- mkdirs inputs 
---
2021-05-17 11:11:09,321 INFO namenode.NNThroughputBenchmark: nrDirs = 1000000
2021-05-17 11:11:09,321 INFO namenode.NNThroughputBenchmark: nrThreads = 200
2021-05-17 11:11:09,321 INFO namenode.NNThroughputBenchmark: nrDirsPerDir = 32
2021-05-17 11:11:09,321 INFO namenode.NNThroughputBenchmark: --- mkdirs stats  
---
2021-05-17 11:11:09,321 INFO namenode.NNThroughputBenchmark: # operations: 
1000000
2021-05-17 11:11:09,321 INFO namenode.NNThroughputBenchmark: Elapsed Time: 15010
2021-05-17 11:11:09,321 INFO namenode.NNThroughputBenchmark:  Ops per sec: 
66622.25183211193
2021-05-17 11:11:09,321 INFO namenode.NNThroughputBenchmark: Average Time: 2
2021-05-17 11:11:09,331 INFO namenode.FSEditLog: Ending log segment 1, 1031254

{code}

Command: ./hadoop jar 
../share/hadoop/common/hadoop-hdfs-3.1.1-hw-ei-SNAPSHOT-tests.jar 
org.apache.hadoop.hdfs.server.namenode.NNThroughputBenchmark -fs file:/// -op 
mkdirs -threads 200 -dirs 1000000 -dirsPerDir 32

Hw configuration:
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
CPU(s):                48
On-line CPU(s) list:   0-47
Thread(s) per core:    2
Core(s) per socket:    12
Socket(s):             2
NUMA node(s):          2
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 63
Model name:            Intel(R) Xeon(R) CPU E5-2690 v3 @ 2.60GHz
Stepping:              2
CPU MHz:               2600.406
CPU max MHz:           3500.0000
CPU min MHz:           1200.0000
BogoMIPS:              5189.51
Virtualization:        VT-x
L1d cache:             32K
L1i cache:             32K
L2 cache:              256K
L3 cache:              30720K
NUMA node0 CPU(s):     0-11,24-35
NUMA node1 CPU(s):     12-23,36-47


> NameNode Fine-Grained Locking via Metadata Partitioning
> -------------------------------------------------------
>
>                 Key: HDFS-14703
>                 URL: https://issues.apache.org/jira/browse/HDFS-14703
>             Project: Hadoop HDFS
>          Issue Type: Improvement
>          Components: hdfs, namenode
>            Reporter: Konstantin Shvachko
>            Priority: Major
>         Attachments: 001-partitioned-inodeMap-POC.tar.gz, 
> 002-partitioned-inodeMap-POC.tar.gz, 003-partitioned-inodeMap-POC.tar.gz, 
> NameNode Fine-Grained Locking.pdf, NameNode Fine-Grained Locking.pdf
>
>
> We target to enable fine-grained locking by splitting the in-memory namespace 
> into multiple partitions each having a separate lock. Intended to improve 
> performance of NameNode write operations.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to