Bad Metadata performances for XFS?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello Guys,

      I happened run some benchmarks for XFS, and found some intresting to share here:
Kernel version:
[root@localhost shm]# uname -r
4.7.0-rc5+

[root@localhost shm]# cat /proc/cpuinfo  | grep Intel
vendor_id	: GenuineIntel
model name	: Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz

dd 16GB to /dev/shm/data to use memory backend storage to benchmark metadata performaces.

Benchmark tool is mdtest, you can download it from 
https://sourceforge.net/projects/mdtest/

Steps to run benchmark
#mkfs.xfs /dev/shm/data
#mount /dev/shm/data /mnt/test
#mdtest -d /mnt/test -n 2000000

1 tasks, 2000000 files/directories

SUMMARY: (of 1 iterations)
   Operation                      Max            Min           Mean        Std Dev
   ---------                      ---            ---           ----        -------
   Directory creation:      24724.717      24724.717      24724.717          0.000
   Directory stat    :    1156009.290    1156009.290    1156009.290          0.000
   Directory removal :     103496.353     103496.353     103496.353          0.000
   File creation     :      23094.444      23094.444      23094.444          0.000
   File stat         :    1158704.969    1158704.969    1158704.969          0.000
   File read         :     752731.595     752731.595     752731.595          0.000
   File removal      :     105481.766     105481.766     105481.766          0.000
   Tree creation     :       2229.827       2229.827       2229.827          0.000
   Tree removal      :          1.275          1.275          1.275          0.000

-- finished at 07/04/2016 12:54:26 --

IOPS for file creation is only 2.3W, however compare to Ext4 with same testing.
  Operation                      Max            Min           Mean        Std Dev
   ---------                      ---            ---           ----        -------
   Directory creation:      65875.462      65875.462      65875.462          0.000
   Directory stat    :    1060115.356    1060115.356    1060115.356          0.000
   Directory removal :     109955.606     109955.606     109955.606          0.000
   File creation     :     114898.425     114898.425     114898.425          0.000
   File stat         :    1046223.044    1046223.044    1046223.044          0.000
   File read         :     699663.339     699663.339     699663.339          0.000
   File removal      :     152320.304     152320.304     152320.304          0.000
   Tree creation     :      19065.018      19065.018      19065.018          0.000
   Tree removal      :          1.269          1.269          1.269          0.000

IOPS of file creation is more than 11W!!!

I understand Ext4 use Hash index tree and XFS use B+ tree for directroy, so i test Btrfs
for this case.
  ---------                      ---            ---           ----        -------
   Directory creation:      99312.866      99312.866      99312.866          0.000
   Directory stat    :    1116205.199    1116205.199    1116205.199          0.000
   Directory removal :      66441.011      66441.011      66441.011          0.000
   File creation     :      91282.930      91282.930      91282.930          0.000
   File stat         :    1117636.580    1117636.580    1117636.580          0.000
   File read         :     754964.332     754964.332     754964.332          0.000
   File removal      :      69708.657      69708.657      69708.657          0.000
   Tree creation     :      29746.837      29746.837      29746.837          0.000
   Tree removal      :          1.289          1.289          1.289          0.000

Even Btrfs, it got about 9W....

Hmm..Maybe this is because too many files under single directory?(200W won't be too much i guess)
I reduce number of files for XFS to 50W.
1 tasks, 500000 files/directories

SUMMARY: (of 1 iterations)
   Operation                      Max            Min           Mean        Std Dev
   ---------                      ---            ---           ----        -------
   Directory creation:      53021.632      53021.632      53021.632          0.000
   Directory stat    :    1187581.191    1187581.191    1187581.191          0.000
   Directory removal :     108112.695     108112.695     108112.695          0.000
   File creation     :      51654.911      51654.911      51654.911          0.000
   File stat         :    1180447.310    1180447.310    1180447.310          0.000
   File read         :     755391.001     755391.001     755391.001          0.000
   File removal      :     108415.353     108415.353     108415.353          0.000
   Tree creation     :       2129.088       2129.088       2129.088          0.000
   Tree removal      :          5.272          5.272          5.272          0.000

-- finished at 07/04/2016 12:59:17 --

So performances go up from 2.3W to 5.1W, but still very slow compared to others...


PS: mkfs options for Btrfs is: mkfs.btrfs -m single -d single -f
       mkfs options for XFS is: mkfs.xfs -f
       mkfs options for Ext4 is: mkfs.ext4 -i 2048(to generate enough inodes for testing)

Best Regards,
Shilong
--
To unsubscribe from this list: send the line "unsubscribe linux-xfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [XFS Filesystem Development (older mail)]     [Linux Filesystem Development]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux RAID]     [Linux SCSI]


  Powered by Linux