Re: Fragments in Ext2 fs

Leonard N. Zubkoff (lnz@dandelion.com)
Sun, 16 Jul 1995 20:49:18 -0700


From: Linus Torvalds <Linus.Torvalds@cs.Helsinki.FI>
Date: Mon, 10 Jul 1995 07:58:26 +0300
Subject: Re: Fragments in Ext2 fs

Brian Haney: "Fragments in Ext2 fs" (Jul 7, 8:07):

As far as I'm concerened, I'd rather not see fragments. They aren't
worth it, IMHO.

- They add unnecessary complexity
- the default linux blocksize is just 1kB, which is just about the
default fragment-size for BSD systems, I do believe (8kB blocks, 1kB
fragments?)
- througput through larger blocksizes can be just about offset by using
scatter-gather device drivers (and linux has them) and some extra CPU
overhead.

While I agree with your first two points, some recent measurements I've made
show that a 1K block size EXT2 file system performs significantly worse than a
4K block size file system in sustained write or read performance. In one 200MB
example, I could only achieve 3326700 bytes/second write and 2602571
bytes/second read to/from a 1K file system, whereas the same test run on the
same partition but formatted for 4K blocks can sustain 4602045 bytes/second
write and 3850811 bytes/second read. For reference, using the same unformatted
partition produces 4881638 bytes/second write and 3654211 bytes/second read.

This leads me to conclude that we are paying a significant penalty for using 1K
blocks, and therefore a file system with 8K blocks and 1K fragments might be a
big win. As disks keep getting faster, I suspect the management of 1K blocks
in the buffer cache is becoming a limiting factor in certain kinds of I/O
performance.

Leonard