Messages in this thread | | | Date | Wed, 26 Mar 2008 14:22:10 +0100 | From | "Bart Van Assche" <> | Subject | Re: RAID-1 performance under 2.4 and 2.6 |
| |
On Wed, Mar 26, 2008 at 1:36 PM, Emmanuel Florac <eflorac@intellique.com> wrote: > Le Wed, 26 Mar 2008 12:15:57 +0100 > > "Bart Van Assche" <bart.vanassche@gmail.com> écrivait: > > > You are welcome to post the numbers you obtained with dd for direct > > I/O on a RAID-1 setup for 2.4 versus 2.6 kernel. > > Here we go (tested on a slightly slower hardware : Athlon64 3000+, > nVidia chipset) . Actually, direct IO result is identical. However, the > significant number for the end user in this case is the NFS thruput. > > 2.4 kernel (2.4.32), async write thru NFS mount > -------------------------------- > emmanuel[/mnt/temp]$ dd if=/dev/zero of=./testdd01 bs=1M count=1024 > 1073741824 bytes (1,1 GB) copied, 15,5176 s, 69,2 MB/s > > 2.4 kernel (2.4.32), sync write > -------------------------------- > root@0[root]# ./dd if=/dev/zero of=/mnt/raid/testdd01 bs=1M count=1024 \ > oflag=direct,dsync > 1073741824 bytes (1.1 GB) copied, 21.7874 seconds, 49.3 MB/s > > 2.6 kernel (2.6.22.18), async write thru NFS mount > -------------------------------- > emmanuel[/mnt/temp]$ dd if=/dev/zero of=./testdd02 bs=1M count=1024 > 1073741824 bytes (1,1 GB) copied, 21,3618 s, 50,3 MB/s > > 2.6 kernel (2.6.22.18), sync write > -------------------------------- > root@0[root]# ./dd if=/dev/zero of=/mnt/raid/testdd02 bs=1M count=1024 \ > oflag=direct,dsync > 1073741824 bytes (1.1 GB) copied, 21.7011 seconds, 49.5 MB/s
It's good to see that the synchronous write throughput is identical for the 2.4.32 and 2.6.22.18 kernels.
Regarding NFS: there are many parameters that influence NFS performance. Are you using the userspace NFS daemon or the NFS daemon in the kernel ? Telling NFS that it should use TCP instead of UDP usually increases performance, as well as increasing the read and write block size. And if there is only a single client accessing the NFS filesystem, you can increase the attribute cache timeout in order to decrease the number of NFS getattr calls. You could e.g. try the following command on the client:
mount -o remount,actimeo=86400,rsize=1048576,wsize=1048576,nfsvers=3,tcp,nolock /mnt/temp
Please read the nfs(5) man page before using these parameters in a production environment. Note: the output of the nfsstat command can be helpful when optimizing NFS performance.
Bart. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |