LINUX.ORG.RU
ФорумAdmin

Размышление о файловых системах в свете последних событий -2


0

0

to sdio
Ты действительно считаешь, что измерение милисекунд объективно? Позапускай тест несколько раз и увидишь, что результаты варьируются в пределах 10% как минимум. Смотри, вот тест на 5000 файлах из /dev/null, sync + 5 sec, и удаление.
Могу сказать, что на файлах как минимум вплоть до 5 Гб XFS проигрывает Reiser-у и Ext3 при копировании гарантированно в 2-3 раза.
Использование XFS на серверах с фильмами и тому подобным (а уж тем более - на системных разделах) - включает на этих серверах СИЛЬНЫЕ ТОРМОЗА. Еще раз повторюсь, что использование XFS оправдано только на файлах более 15 Гб.

Результаты
ResiserFS
server:/home # ./test 2> /dev/null
timeCopy= 70.9883110523
timeDelete= 2.51191091537

XFS
server:/home # ./test 2> /dev/null
timeCopy= 382.756887913
timeDelete= 2.11573791504

-------------------------------------
#!/usr/bin/python
import time
import os
import time
os.mkdir('/home/testdir')
###Copy
timeStart=time.time()
for i in xrange(5000):
os.system("dd if=/dev/zero of=%s bs=1024 count=1024" % ('/home/testdir/testfile'+`i`))
timeEnd=time.time()
timeCopy=timeEnd-timeStart
print 'timeCopy=', timeCopy
###Sync
os.system('sync')
time.sleep(5)
### Delete
timeStart=time.time()
os.system('rm -R /home/testdir/')
timeEnd=time.time()
timeDelete=timeEnd-timeStart
print 'timeDelete=', timeDelete

anonymous

>dd if=/dev/zero of=%s bs=1024 count=1024" 

Блоками по 1К на дискетки писать разве что.
Повтори тест для блоков >8к, ну для примера пусть будет 1М

dd if=/dev/zero of=%s bs=1М count=1" 

sdio ★★★★★
()

-----------------------------------------------------------------
последовательная запись 1000 одномегабайтных файлов
-----------------------------------------------------------------
sdio:~# time ./fstest1.sh /reiserfs

real    0m33.684s        real    0m34.186s
user    0m1.120s         user    0m1.112s
sys     0m11.981s        sys     0m12.145s


sdio:~# time ./fstest1.sh /xfs

real    0m33.743s        real    0m33.870s
user    0m1.028s         user    0m1.164s
sys     0m10.477s        sys     0m10.385s
-----------------------------------------------------------------
одновременная запись 1000 одномегабайтных файлов
-----------------------------------------------------------------
sdio:~# time ./fstest2.sh /reiserfs

real    0m34.376s        real    0m34.371s
user    0m1.412s         user    0m1.504s
sys     0m15.593s        sys     0m15.705s

sdio:~# time ./fstest2.sh /xfs

real    0m35.272s        real    0m36.810s
user    0m1.244s         user    0m1.252s 
sys     0m12.709s        sys     0m12.441s


-----------------------------------------------------------------
cat fstest1.sh
-----------------------------------------------------------------
#! /bin/sh

D="$1/fstest"; mkdir -p $D
for i in `seq -w 1 1000`; do
    dd if=/dev/zero of=$D/file$i.1M bs=1M count=1 2>/dev/null
done
sync
rm -rf $D
sync

-----------------------------------------------------------------
cat fstest2.sh
-----------------------------------------------------------------
#! /bin/sh

D="$1/fstest"; mkdir -p $D
for i in `seq -w 1 1000`; do
      dd if=/dev/zero of=$D/file$i.1M bs=1M count=1 2>/dev/null &
done
wait
sync
rm -rf $D
sync




sdio ★★★★★
()
Ответ на: комментарий от sdio

Большой разницы нет. Добавил sync в подсчет времени. Вот, что получилось:
5000 раз команда
dd if=/dev/zero of=%s bs=1M count=1 2> /dev/null

ReiserFS
timeCopy= 65.6047418118
timeDelete= 2.43139410019

XFS
timeCopy= 362.549285173
timeDelete= 1.27166891098

anonymous
()
Ответ на: комментарий от anonymous

Полагаю, разница в железе, а может и в совте.

Я проверял на dual P-III 750Mhz, 512RAM, disk SCSI 
(hdparm -t дает около 45Мб/с) 
Debian/Sarge kernel 2.6.17-2-686 из backports

sdio ★★★★★
()
Ответ на: комментарий от sdio

Очень странно. Похоже такая ситуация только у меня на серверах. У меня HP DL 380 G4, 2xXeon 3.6GHz-64 bit, 2Gb, Smart Array 6i Controller, 4x146.8Gb 10k,RAID 5, OpenSuSE 10.1-64. На аналогичном серваке стоит OpenSuSE 10.1 32bit - тоже самое. hdparm -t - 275Mb/sec Проверил у себя на десктопе HP DC530 (P4 3 GHz, 512 Mb, OpenSuSE 10.1) - подобного косяка нет. Т.е. почему-то на сервере скорость ReiserFS и Ext3 - примерно одинаковая, а XFS очень сильно тормозит. ----------------------------------------------------------------- последовательная запись 1000 одномегабайтных файлов ----------------------------------------------------------------- server:/usr/local/sbin # time fstest1.sh /home/reiserfs

real 0m12.107s user 0m0.700s sys 0m4.208s

server:/usr/local/sbin # time fstest1.sh /home/xfs

real 1m13.166s user 0m0.864s sys 0m3.260s

desktop:/usr/local/sbin # time fstest1.sh /home/reiserfs

real 0m29.098s user 0m0.732s sys 0m3.660s

desktop:/usr/local/sbin # time fstest1.sh /home/xfs

real 0m26.452s user 0m0.700s sys 0m3.592s

anonymous
()
Ответ на: комментарий от sdio

Очень странно. Похоже такая ситуация только у меня на серверах.
У меня HP DL 380 G4, 2xXeon 3.6GHz-64 bit, 2Gb, Smart Array 6i Controller, 4x146.8Gb 10k,RAID 5, OpenSuSE 10.1-64. На аналогичном серваке стоит OpenSuSE 10.1 32bit - тоже самое.
hdparm -t - 275Mb/sec
Проверил у себя на десктопе HP DC530 (P4 3 GHz, 512 Mb, OpenSuSE 10.1) - подобного косяка нет.
Т.е. почему-то на сервере скорость ReiserFS и Ext3 - примерно одинаковая, а XFS очень сильно тормозит.
-----------------------------------------------------------------
последовательная запись 1000 одномегабайтных файлов
-----------------------------------------------------------------
server:/usr/local/sbin # time fstest1.sh /home/reiserfs

real 0m12.107s
user 0m0.700s
sys 0m4.208s

server:/usr/local/sbin # time fstest1.sh /home/xfs

real 1m13.166s
user 0m0.864s
sys 0m3.260s

desktop:/usr/local/sbin # time fstest1.sh /home/reiserfs

real 0m29.098s
user 0m0.732s
sys 0m3.660s


desktop:/usr/local/sbin # time fstest1.sh /home/xfs

real 0m26.452s
user 0m0.700s
sys 0m3.592s

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.