Sistem file terstruktur Copy-on-Write dan Log yang intuitif dapat memberikan kinerja yang lebih baik pada disk shingled dengan mengurangi pengurangan penulisan acak. Benchmark agak mendukung ini, namun, perbedaan dalam kinerja ini tidak spesifik untuk disk shingled. Mereka juga terjadi pada disk yang tidak dihancurkan yang digunakan sebagai kontrol. Dengan demikian, beralih ke disk shingled mungkin tidak memiliki banyak relevansi dengan pilihan sistem file Anda.
Filesystem nilfs2 memberikan kinerja yang cukup baik pada disk SMR. Namun, ini karena saya mengalokasikan seluruh partisi 8TB, dan benchmark hanya menulis ~ 0.5TB sehingga pembersih nilf tidak perlu berjalan. Ketika saya membatasi partisi hingga 200GB, tolok ukur nilfs bahkan tidak berhasil diselesaikan. Nilfs2 mungkin merupakan pilihan yang baik untuk kinerja jika Anda benar-benar menggunakan disk "arsip" sebagai disk arsip di mana Anda menyimpan semua data dan snapshot yang dituliskan ke disk selamanya, karena kemudian nilfs cleaner tidak harus dijalankan.
Saya mengerti bahwa ST8000AS0002-1NA17Z
drive seagate 8TB yang saya gunakan untuk pengujian memiliki area cache ~ 20GB . Saya membuat mengubah pengaturan server file filebench default sehingga tolok ukur yang ditetapkan akan ~ 125GB, lebih besar dari area cache yang tidak dihancurkan:
set $meanfilesize=1310720
set $nfiles=100000
run 36000
Sekarang untuk data aktual. Jumlah ops mengukur kinerja fileserver "keseluruhan" sedangkan ms / op mengukur latensi dari append acak, dan dapat digunakan sebagai panduan kasar untuk kinerja penulisan acak.
$ grep rand *0.out | sed s/.0.out:/\ / |sed 's/ - /-/g' | column -t
SMR8TB.nilfs appendfilerand1 292176ops 8ops/s 0.1mb/s 1575.7ms/op 95884us/op-cpu [0ms - 7169ms]
SMR.btrfs appendfilerand1 214418ops 6ops/s 0.0mb/s 1780.7ms/op 47361us/op-cpu [0ms-20242ms]
SMR.ext4 appendfilerand1 172668ops 5ops/s 0.0mb/s 1328.6ms/op 25836us/op-cpu [0ms-31373ms]
SMR.xfs appendfilerand1 149254ops 4ops/s 0.0mb/s 669.9ms/op 19367us/op-cpu [0ms-19994ms]
Toshiba.btrfs appendfilerand1 634755ops 18ops/s 0.1mb/s 652.5ms/op 62758us/op-cpu [0ms-5219ms]
Toshiba.ext4 appendfilerand1 466044ops 13ops/s 0.1mb/s 270.6ms/op 23689us/op-cpu [0ms-4239ms]
Toshiba.xfs appendfilerand1 368670ops 10ops/s 0.1mb/s 195.6ms/op 19084us/op-cpu [0ms-2994ms]
Karena Seagate adalah 5980RPM, orang mungkin secara naif mengharapkan Toshiba 20% lebih cepat. Tolok ukur ini menunjukkannya kira-kira 3 kali (200%) lebih cepat, sehingga tolok ukur ini menghantam hukuman kinerja sirap. Kami melihat Shingled (SMR) disk masih tidak cocok dengan kinerja ext4 dengan pada disk (PMR) unshingled. Performa terbaik adalah dengan nilfs2 dengan partisi 8TB (sehingga pembersih tidak perlu dijalankan), tetapi bahkan kemudian secara signifikan lebih lambat daripada Toshiba dengan ext4.
Untuk membuat tolok ukur di atas lebih jelas, mungkin dapat membantu untuk menormalkannya relatif terhadap kinerja ext4 pada setiap disk:
ops randappend
SMR.btrfs: 1.24 0.74
SMR.ext4: 1 1
SMR.xfs: 0.86 1.98
Toshiba.btrfs: 1.36 0.41
Toshiba.ext4: 1 1
Toshiba.xfs: 0.79 1.38
Kita melihat bahwa pada disk SMR btrf memiliki sebagian besar keuntungan pada ops keseluruhan yang dimilikinya pada ext4, tetapi penalti pada penambahan acak tidak sedramatis rasio. Ini mungkin menyebabkan seseorang pindah ke btrfs pada disk SMR. Di sisi lain, jika Anda perlu menambahkan acak latensi rendah, patokan ini menyarankan Anda menginginkan xfs, terutama pada SMR. Kami melihat bahwa walaupun SMR / PMR dapat memengaruhi pilihan sistem file Anda, mengingat beban kerja yang Anda optimalkan tampaknya lebih penting.
Saya juga menjalankan patokan berbasis loteng. Durasi menjalankan loteng (pada partisi disk penuh 8TB SMR) adalah:
ext4: 1 days 1 hours 19 minutes 54.69 seconds
btrfs: 1 days 40 minutes 8.93 seconds
nilfs: 22 hours 12 minutes 26.89 seconds
Dalam setiap kasus repositori loteng memiliki statistik berikut:
Original size Compressed size Deduplicated size
This archive: 1.00 TB 639.69 GB 515.84 GB
All archives: 901.92 GB 639.69 GB 515.84 GB
Menambahkan salinan kedua dari disk 1 TB yang sama ke loteng membutuhkan waktu 4,5 jam untuk masing-masing dari ketiga sistem file ini. Tumpukan mentah dari tolok ukur dan smartctl
informasi ada di:
http://pastebin.com/tYK2Uj76
https://github.com/gmatht/joshell/tree/master/benchmarks/SMR