On Sun, 30 Nov 2008 14:27:22 +0200 Alan McKinnon <[EMAIL PROTECTED]> wrote:
[-snip-] > > You are the one making them claims! You do the test! Me? No, my dear. It is you who claims that fragmentation only matters on MS file systems while Linux FS remain unaffected w/o providing any proof. The common sense says otherwise: fragmentation leads to seeks, seeks hurt performance. Anyways, I'm going to do the tests because I want to see the numbers. Should the outcome prove you were right I'd be the first to congratulate and thank you for opening my eyes. Since I'm going to use my workstation at work to do the job at night I'll limit the repetitions to 400 which would take about 13 hours with two files, 2GB each. The machine has 1GB RAM installed and I'll run the test in Gentoo's "boot" rc level. I've closed everything except sshd and screen (see "ps" outpput below) and have taken care of the cache by clearing it before each run via /proc (see the script). The file system is ext3 and during the test it will be used in about 30% of its capacity: localhost test # df -h | grep home /dev/sdc1 15G 718M 14G 5% /home localhost test # mount -v | grep home /dev/sdc1 on /home/ type ext3 (rw,noatime,nodiratime,data=journal,commit=1) localhost test # rc-status Runlevel: boot bootmisc [ started ] checkfs [ started ] checkroot [ started ] clock [ started ] hostname [ started ] iptables [ started ] localmount [ started ] modules [ started ] net.eth0 [ started ] net.lo [ started ] sshd [ started ] udev-postmount [ started ] localhost test # ps af PID TTY STAT TIME COMMAND 12191 pts/0 Ss 0:00 -bash 12227 pts/0 S 0:00 \_ su - 12231 pts/0 S 0:00 \_ -su 12266 pts/0 S+ 0:00 \_ screen -x 8575 pts/3 Ss+ 0:00 -/bin/bash 4967 pts/2 Ss 0:00 -/bin/bash 12830 pts/2 R+ 0:00 \_ ps af 4895 pts/1 Ss+ 0:03 -/bin/bash 4755 tty6 Ss+ 0:00 /sbin/agetty 38400 tty6 linux 4754 tty5 Ss+ 0:00 /sbin/agetty 38400 tty5 linux 4753 tty4 Ss+ 0:00 /sbin/agetty 38400 tty4 linux 4752 tty3 Ss+ 0:00 /sbin/agetty 38400 tty3 linux 4751 tty2 Ss+ 0:00 /sbin/agetty 38400 tty2 linux 4750 tty1 Ss+ 0:00 /sbin/agetty 38400 tty1 linux The script: #!/bin/bash cat /usr/portage/distfiles/* > test1 cp test1 test2 filefrag test* sync for (( i=0 ; i<=400 ; i++ )) do sync echo 3 > /proc/sys/vm/drop_caches echo -n "try_no=$i " /usr/bin/time -f "\ command=%C|\ real_t=%e|\ kernel_t=%S|\ user_t=%U|\ major_faults=%F|\ minor_faults=%R|\ context_sw=%c|\ io_waits=%w|\ fs_reads=%I|\ fs_writes=%O" cp test1 /dev/null sync echo 3 > /proc/sys/vm/drop_caches echo -n "try_no=$i " /usr/bin/time -f "\ command=%C|\ real_t=%e|\ kernel_t=%S|\ user_t=%U|\ major_faults=%F|\ minor_faults=%R|\ context_sw=%c|\ io_waits=%w|\ fs_reads=%I|\ fs_writes=%O" cp test2 /dev/null done ###########EOF I hope all this will be enough for you to accept the results. -- Best regards, Daniel