*BSD News Article 56380


Return to BSD News archive

Newsgroups: comp.os.linux.misc,comp.unix.bsd.freebsd.misc
Path: euryale.cc.adfa.oz.au!newshost.anu.edu.au!harbinger.cc.monash.edu.au!nntp.coast.net!news.sprintlink.net!news1!not-for-mail
From: root@dyson.iquest.net (John S. Dyson)
Subject: Re: ext2fs (was Running FreeBSD and Linux on same machine?)
X-Nntp-Posting-Host: dyson.iquest.net
Message-ID: <49pb2e$6bb@dyson.iquest.net>
Sender: news@iquest.net (News Admin)
Organization: John S. Dyson's home machine
References: <m2zqdjdegw.fsf@lily.sirius.com> <49hahv$241@times.tfs.com> <49hv18$jgs@louie.udel.edu> <49imhn$rie@mark.ucdavis.edu>
Date: Sat, 2 Dec 1995 10:50:54 GMT
Lines: 40
Xref: euryale.cc.adfa.oz.au comp.os.linux.misc:74580 comp.unix.bsd.freebsd.misc:10052

In article <49imhn$rie@mark.ucdavis.edu>,
David E. O'Brien <obrien@cs.ucdavis.edu> wrote:
>: ::>FreeBSD-current now supports the mounting of ext2fs filesystems.  You
>: ::>can share a common fs with Linux.
>
>What are the real differences between ufs and ext2fs?  Which is better in
>which respects?
>
I can only answer the question on an implementation and performance basis --

By default on FreeBSD, the filesystems are mounted with synchronous meta-data
writes and clustered (sort-of limited async) data writes.  So, by default
on FreeBSD-current today, you don't get the "advantage" of the async nature
of the Linux EXT2FS.  This is changing, and I think that we will be implementing
a fairly sophisticated async scheme on FreeBSD to allow UFS and EXT2FS to
support async writes better than they were previously supported on FreeBSD.

As for sequential performance, partially because of the I/O structure on
FreeBSD, filesystems with small block sizes are slower than filesystems
with big block sizes.  At one time in -current (and in FreeBSD-2.1), we
did not support clustering on filesystems whose block size < PAGE_SIZE.  This
has changed and so the penalty for such filesystems has decreased significantly
(case-in-point:  CD9660 filesystem is now twice as fast for sequential reads
in -current than it used to be, as it has a 2K filesystem block size.)
Additionally, there is simply more overhead in using a small blocksize
filesystem because of the distribution of CPU overhead.  So, to get better
performance on EXT2FS, you might increase the blocksize from 1K to 4K.

As is today, I believe that Remy is looking at this (I know that I am),
as to why EXT2FS appears to be a bit slower, and fix the problem...  Today,
I get about 1.5MBytes/sec on an EXT2FS while on UFS I get about 2.2MBytes/sec.
It does not appear to be a generic design inefficiency in the filesystem
itself because the FreeBSD clustering code does read/write nice big chunks
to/from the disk.  It is an overhead issue that will be worked.

So I hope that this answers your question!!!

John
dyson@freebsd.org