Below is a simplified version of the test program, and results of
testing different kernels/filesystems/mount options. The results are a
little different from the ones described in the initial post (this
time performance decreased "only" 2 times), but the general tendency
is clearly the same.
============ 2.6.19-rc5-git2 ============
mount -t xfs -o noatime,barrier /dev/sdc1 /mnt/disc
real 16m40.516s
user 0m17.989s
sys 9m36.320s
mount -t xfs -o noatime,nobarrier /dev/sdc1 /mnt/disc
real 15m40.212s
user 0m17.549s
sys 9m29.692s
mount -t ext3 -o noatime /dev/sdc1 /mnt/disc
real 49m44.728s
user 0m27.678s
sys 14m15.689s
============ 2.6.14.6 ============
mount -t xfs -o noatime /dev/sdc1 /mnt/disc
real 9m58.974s
user 0m17.373s
sys 8m4.850s
mount -t ext3 -o noatime /dev/sdc1 /mnt/disc
real 49m7.526s
user 0m26.278s
sys 12m37.627s
========================================
#include <stdio.h>
#include <fcntl.h>
#include <unistd.h>
#define __BYTES 8192
#define __FILES 1000
char buf [__BYTES];
int main ()
{
char fname [1024];
int nFiles [__FILES];
int f, i;
/* Fill buf */
for (i = 0; i < __BYTES; i++)
buf [i] = i % 128;
/* Create and open files */
for (f = 0; f < __FILES; f++) {
sprintf (fname, "/mnt/disc/storage/file-%d", f);
nFiles [f] = open (fname, O_WRONLY | O_CREAT | O_TRUNC, 0644);
}
for (i = 0; i < 262144; i++) {
/* Write data to a big file */
write (nFiles [0], buf, __BYTES);
/* Write data to small files */
for (f = 1; f < __FILES; f++)
write (nFiles [f], &f, sizeof (f));
}
for (f = 0; f < __FILES; f++) {
fsync (nFiles [f]);
close (nFiles [f]);
}
return 0;
}
========================================
--
Igor A. Valcov
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]