-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On Sunday, 2013-10-27 at 12:43 +0100, Carlos E. R. wrote:
Here I repeat the test on real hardware. I have used a script with variations as I find out things; when the difference is significative, I repeated the test. I'll post the script below. I did this on my same main machine, but on a spare 1TB HD. I reuse the same test partition, creating a different filesystem in the script prior to testing it.
I forgot to post the script for reference: #!/bin/bash function test_filesystem_extra() { DEVICE=/dev/disk/by-id/wwn-0x5000c500613c92d5-part6 WHERE=/data/Test TESTHERE=$WHERE/Here SAMPLE=$WHERE/sample # Verify entry value case $1 in ext4) TIPO=ext4 ;; ext3) TIPO=ext3 ;; xfs) TIPO=xfs ;; reiserfs) TIPO=reiserfs ;; btrfs) TIPO=btrfs ;; *) echo "Error de sintaxis" ;; esac # sometimes, umount does not succeed. Insist. sync umount $DEVICE sleep 3 umount $DEVICE HECHO=`mount | grep /data/Test` if [ -z "$HECHO" ]; then echo "Previous filesystem umounted sucesfully." else echo "Error, crash danger: could not umount previous filesystem." exit fi # Create filesystem case $1 in ext4) echo time mke2fs -L Test_ext4 -t ext4 $DEVICE ;; ext3) echo time mke2fs -L Test_ext3 -t ext3 $DEVICE ;; reiserfs) echo time mkreiserfs -q --label Test_reiserfs $DEVICE ;; btrfs) echo time mkfs.btrfs -L Test_btrfs $DEVICE ;; xfs) echo time mkfs.xfs -f -L Test_xfs $DEVICE ;; *) echo "Error de sintaxis" exit ;; esac # mount filesystem mount $DEVICE $WHERE HECHO=`mount | grep /data/Test` if [ -z "$HECHO" ]; then echo "Mount or filesystem creation failed." exit else echo "Filesystem created." df -h /data/Test file --dereference -s $DEVICE fi # preparation of sampe to copy echo echo "Preparing sample" mkdir $TESTHERE head -c$2 /dev/urandom > $SAMPLE sync # start DATE=`date --rfc-3339=seconds` echo "$DATE --- Timing copy test $TIPO with sync ($2B)" # Copy N times the same file with different name, syncing every 'k' # times. ERROR=0 time for i in `seq -w 0 9`; do if [ $ERROR -ne 0 ]; then break fi echo $i for k in `seq -w 0 999`; do cp $SAMPLE $TESTHERE/TT-$i--$k if [ $? -gt 0 ]; then echo "Copy error on TT-$i--$k, abort" ERROR=1 break fi done sync done echo "one more sync." time sync DATE=`date --rfc-3339=seconds` echo "$DATE ---- Timing copy test $TIPO with no sync ($2B)" # Copy N times the same file with different name, without sync. ERROR=0 time for i in `seq -w 0 9`; do if [ $ERROR -ne 0 ]; then break fi echo $i for k in `seq -w 0 999`; do cp $SAMPLE $TESTHERE/TT-$i--$k if [ $? -gt 0 ]; then echo "Copy error on TT-$i--$k, abort" ERROR=1 break fi done done # Finalize. Sometimes this sync takes longer than expected. Reason # unknown. echo "one sync before closing." time sync } function run_one_test() { echo echo "===================================== " echo "| $1 " echo test_filesystem_extra $1 $2 } function run_a_test_series() { echo "*****=====================================***** " echo "**** Running test suite of $1 bytes" echo "*****=====================================***** " run_one_test reiserfs $1 run_one_test ext4 $1 run_one_test ext3 $1 run_one_test xfs $1 run_one_test btrfs $1 } run_a_test_series 10000000 run_a_test_series 1000000 run_a_test_series 100000 run_a_test_series 10000 run_a_test_series 1000 run_a_test_series 100 - -- Cheers, Carlos E. R. (from 12.3 x86_64 "Dartmouth" at Telcontar) -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.19 (GNU/Linux) iEYEARECAAYFAlJtYO8ACgkQtTMYHG2NR9WX4gCeLN0Idfeyjv97PAdmImQxiQGi 48UAnRqh6+AloGECe3WdSzwEKx/Mb8oP =9Wo7 -----END PGP SIGNATURE----- -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org