Real-World Benchmarks of Ext4
Ashmash writes "Phoronix has put out a fresh series of benchmarks that show the real world performance of the Ext4 file-system. They ran 19 tests on Fedora 10 with changing out their primary partition to test Ext3, Ext4, Xfs, and ReiserFS. The Linux 2.6.27 kernel was used with the latest file-system support. In the disk benchmarks like Bonnie++ Ext4 was a clear winner but with the real world tests the results were much tighter and Xfs also possessed many wins. They conclude though that Ext4 is a nice upgrade over Ext3 due to the new features and just not improved performance in a few areas, but its lifespan may be short with btrfs coming soon."
What, no ext2 comparison? seems like a pretty glaring omission.
Begin discussion revolving around what you think btrfs sounds like... again
butter file system
butterface
butt file system
etc...
Admins tend to stick with what they know and ext4 is a natural progression from ext3. btrfs however hasn't even reached version 1.0 yet - and to be honest who is going to want to use a 1.0 release anyway on something as fundamental as a filesystem? Also its development is being done by an Oracle team , albeit FOSS , which may put a few people off.
My prediction for what its worth is that ext4 will be around for a LONG time.
and in the darkness... bind them.
Seriously... one of the nice things about Windows, OSX, Solaris is that they get a new filesystem once every 5-10 years. The safest thing to do for Linux is to be a generation behind. I would not run ext4 until btrfs came out. Why be the admin that gets screwed with early bugs and future incompatibilities...
It really depends on what the larger distros choose to stick with as their default. To be honest, I'd still be using ext2 if Redhat hadn't made ext3 the default. While I'm sure that some applications depend on wringing that last few % of performance out of the spindles, it just doesn't matter THAT much for most applications.
it just doesn't matter THAT much for most applications
well... run an fsck against ext2 and ext3 and tell me it doesn't matter. For an admin, speed, reliability, recoverability... are all major concerns. On Solaris, I love ZFS because of the functionality like snapshots and exports. I also got burned by the IDE/100% CPU driver bug on Sparc hardware. Admins need to be aware of what they are running and what limitations exist. I honest don't give a damn about mp3 encoding speed, but the capabilities and maturity of a filesystem have to be considered.
ReiserFS used to be the killer FS, but now it seems like it is stuck. But I shall not be the judge of that, though there seems to be some truth buried in it somehow. And not to mention, the next release is probably more than a few years down the road.
:-) = I am happy
:^) = I am happy with my big nose
C:\> = I am happy with my OS
I see no analysis as to why the filesystems perform the way they do. Why does XFS perform so well on a 4GB sequential read and so badly on an 8GB read? Why did they include cpu / gfx bound frame/sec benchmarks? In the few application benchmarks where there was more than a tiny fraction of percent difference there's no discussion as to whether that difference is actually significant.
Not at all enlightening.
Nick
WTF who measures things like MP3 compression time when testing a filesystem?!? As far as I can tell they only ran one real I/O test and that was the Intel IOMeter based fileserver test which showed EXT4 is really fast for that profile. I would have loved to have seen the DB profile run. Their other artificial tests could have been summed up by running the streaming media profile since they were just large contiguous reads and writes.
There are 4 boxes to use in the defense of liberty: soap, ballot, jury, ammo. Use in that order. Starting now.
Given that XFS, a 15+ year old file system, is still a serious contender, one would think enough blood has been squeezed from this stone. What is left to us is application tuning and hardware improvements, possibly including filesystem management hardware. It seems to me that teaching application developers how to write their programs to best utilize the filesystem is more likely to yield better performance gains for the effort expended than trying to make a general purpose filesystem good at any flavor of IO that application developers naively throw at it. Simple rules: buffer your IO yourself, perform raw accesses in multiples of the sector/stripe size size.
"If still these truths be held to be
Self evident."
-Edna St. Vincent Millay
What's with the CPU/Video tests? How about some more random access pattern tests, DB/web/streaming media tests? How about showing CPU utilization in addition to I/O performance?
size size.
pizza pizza.
"If still these truths be held to be
Self evident."
-Edna St. Vincent Millay
Which distros will include this as an option at install time? That is what I want to know.
http://blindscribblings.com - Tasty pop-culture in conceptual fashion.
Time to get a new wife
I can't believe it's not butterfs!
Anybody want my mod points?
No need to wonder, Fedora 9 had it already back in may: http://fedoraproject.org/wiki/Releases/9/FeatureList
This has got to be one of the worst tests I have ever seen. Their 'real world' tests were made on operations that take mostly processor power. Without getting into the completely retarded game testing, they looked at encoding, compression, and file encryption. Sorry but for me this tells practically nothing of the speed of a file system. :
I would have like to see
creating 4gb of large files
deleting 4gb of large files
copying 4gb of large files
creating 4gb of small files
deleting 4gb of small files
copying 4gb of small files
what happens if you yank the power plug during a FS operation ?
Start up times for OpenOffice, Eclipse, and GIMP
And then, sure do the tests they ran, but not just
In since F9; in F10 boot the installer with "ext4" on the commandline to get it enabled.
Remember, this is the site that's decided that Ubuntu 7.04 is twice as fast as any other version of Ubuntu. Take what they say with a good healthy dose of skepticism.
Ehm, still those benchmarks filesystems are optimized for. Please try blogbench in order to make filesystem really hurt like they would do for a file server.
{{.sig}}
Their test system is a monster 8-core, dual CPU setup, with only 2 GB of RAM. (Hell, I've got 2 GB of RAM in my dinky single-core Athlon 2800+ desktop.)
RAM is cheap and CPUs are expensive. Their system is not particularly representative since it seems to be biased in the other direction. Further, when the tests include reads and writes that are guaranteed to fill up all available RAM (sequential ops of 4 and 8 GB), the design is flawed because I/O to swap may contaminate the results.
Maybe they can fill up the four open banks on their motherboard (nice of them to show us the photo) and re-run the tests with a more realistic setup, or at least more balanced on the RAM/CPU ratio. Even better, ditch the dual quad-core Xeon (how many Linux users have that?!?) and use a more common format. The ostensible purpose is real-world testing, after all.
Put my fist through my alarm clock with its ding-dong death inside my ear. - The Blackjacks.
To be honest, I'd still be using ext2 if Redhat hadn't made ext3 the default.
Well thank goodness RedHat saved you from yourself, then!
It's not about performance, it's about journaling. Ext3 has it, ext2 doesn't, ergo by modern standards ext2 is crap. The only justification for using it was when the only journaling file systems for linux were unstable.
The enemies of Democracy are
Here's a few pulled-from-my-ass tests for the real world, as opposed to their real-world tests for an ad-revenue-driven world.
Ha! B-Trees! And Linus Torvalds calls Macintosh HFS+ "retarded!" Soooooo funny! That's the newest and kewlest? Come on, HFS has been around since Macs had hard drives, and it used B-Trees! Seriously, nobody benchmarked ZFS, and that's where the real action is going to be headed. Lose two hard drives, your RAID is still AOK, and you can rebuild it on the fly!!! ZFS is the future.
Knowledge is power. Knowledge shared is power multiplied.
Linux developers are PATHETIC.
OSX + ZFS *FOR THE WIN*!
Think different.
Think better.
THINK APPLE.
Volume Shadow Copy: sounds like LVM2 snapshots under Linux and VMS had real versioning file restoraton a long time ago.
Hierarchical Storage Management: HSM as implemented by IBM and then ported to Linux
Junction Points: sounds like hard links under Linux
davecb5620@gmail.com
The real problem with reiserfs: vendor lock-in.
Well, I'm going to assume the ext2/3 drivers are not buggy and then ask, why not just STOP fscking it if it bothers you that much?
Back when I ran linux you had automatic fsck's at regular (reboot) intervals because no one actually trusted the code, but that was 12-13 years ago, I can not possibly believe that by now its not stable and safe enough to avoid checking it a regular interval from clean shutdowns. And even then, its not like its going to happen that often on a server unless you reboot server nightly for some weird reason?
So okay, on a desktop it can get annoying since you may shutdown and restart often, but this is the perfect example of where to just turn off the scheduled fsck on boot. My FreeBSD boxes have never fsck'd on boot after a clean shutdown, I've only seen Windows do it after some sort of change to the FS that made it seem like a good idea, just in case. I can't remember a time when I've seen a Solaris box fsck on boot after a clean shutdown.
So really, WHY is it running so often that it bothers you in the first place?
Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
C:\Documents and Settings\karnal\Desktop>ln
'ln' is not recognized as an internal or external command,
operable program or batch file.
C:\Documents and Settings\karnal\Desktop>mount
'mount' is not recognized as an internal or external command,
operable program or batch file.
C:\Documents and Settings\karnal\Desktop>
Karnal
If this test had included small-file tests, you would see why reiserfs is relevant.
That's odd. I didn't see any small-file benchmarks in this article.
XFS has been around for 15+ years and still makes a pretty good appearance on benchmarks. Which means that ext,ext2 and ext3 filesystems were late and have little to offer more, with ext4 just marginally (15 years to make something like ext4 with such minimally more performance?)
âoeFoolsâ to the Phoronix guys who thought that filesystems relate to in-game frames per second or compression. Most games preload all their stuff into RAM anyway. And compression is CPU-bound, your disk writes are done in the background anyway.
Volume Shadow Copy: sounds like LVM2 snapshots under Linux
VSC isn't perfect for sure, but how exactly do you take a _consistent_ snapshot with LVM? Snap and pray?
VSC has hooks for applications to detect a snapshot and quiesce themselves, in a cooperative manner.
Not perfect, but at least Microsoft's big apps mostly support it to enable consistent backups.
I don't know how popular it is though. The most common way of doing consistent backups on both UNIX and Windows is for the backup software to either tell the app to quiesce itself then back it up, or a combo quiesce & snapshot, exit quiesced mode soon as snap is done, then take your time backing up the snapshot. The problem is that you need app specific modules to quiesce them, and the need to deal with a multitude of snapshot techniques. Snapshot might be software like LVM, or SVM, third party software like VxVM, hardware like Symmetrix BCV, or Clariion snap, God only knows. You can imagine that this gets VERY complex and expensive.
VSC allows applications to plug into it so that backup software doesn't need to be app specific, just VSC aware to start/stop a snap. The app detects a snap and quiesces automatically. VSC also allows storage vendors to integrate their platforms with it. Like I said, the most common was is still the app/vendor specific route, I'm not sure just how many storage vendors have integrated with VSC, but it could be more than I think.
Backup software calls for a snap, the app quiesces by itself, the backend storage system does a hardware snap or mirror split, backup software gets the OK to backup. Cool, huh?
I dig on Microsoft a lot too guys, but you should really get your heads out of the sand and pay attention to the many good things they (and other vendors) do. Reading linux.com all day doesn't give a realistic representation of where Linux stands technologically.
Hierarchical Storage Management: HSM as implemented by IBM and then ported to Linux
News to me, where does Linux have HSM built in? Is it free? Do you have any examples of it being used in production?
Junction Points: sounds like hard links under Linux
Don't nitpick, there is obviously a lot you don't understand about NTFS and it's associated frameworks. The GP is right, NTFS has changed a lot over the years but kept the same name.
Ext has... well, it got journaling at some point. And then.. well, here we are. If Ext3 was more than just your run of the mill textbook filesystem, there wouldn't be so many damned new ones in the works.
Speaking of ReiserFS...what is the deal with it? I always liked it, many of my boxes use it.
Is it dead now with him in prison, or is someone else taking it over?
Light travels faster than sound. This is why some people appear bright until you hear them speak.........
What makes you think the JFS inside of Linux has a future? It's not the same as the one in AIX. It's an old crummy (bad, buggy) version from the OS/2 days. From what I can tell, JFS (in Linux) isn't going to make it. Too many flaws, and no interest by IBM or others in fixing it.
I remembered another little known built in NTFS feature few people know about. Maybe those of you genuinely interested in filesystem features & backups, not OS religion will appreciate it.
Change journaling.
I don't think there is a native GUI for this, instead the backup vendor provides one, or handles it for you.
It is specifically meant for backups. Instead of scrubbing the entire disk and comparing to previous records to find changed files, with the change journal enabled, incremental backups consisting of millions of files are pretty quick. Well, discovering the list is MUCH faster anyway, backing up a million 1k files sucks regardless. The beginning of a backup can actually be very resource intensive, and time consuming without this feature. It has a small overhead, but each time you perform a backup operation the journal resets, releasing that overhead.
Anyone know where this feature might have originated from? AFAIK Solaris and Linux don't have this ability, and being backup specific, I can't imaging the FOSS world even dream of it. Well, now you know, copy away :)
Those results look dodgy to me. It looks like the total time to check the filesystem decreases as the number of inodes increases. I could perhaps understand time per inode decreasing but not the total time.
Th upside is an ~20% increase in storage capacity and transfer speeds due to no vowel overhead.
How come all these 'real world' benchmarks they did are for 2GB files only? Why not thousands of small files instead? I'd like to know how the filesystem works for Maildir E-mail and web hosting, or for BitTorrent usage. BitTorrent especially loves to trash whole chunks of the drive all at once, although I understand that a test-bed BitTorrent network would take a bit more work.
What about browsing a directory full of downloaded photos (and the resulting thumbnail generation), or re-compressing a music collection?
That's a few benchmarks I think might be realistic.
- Michael T. Babcock (Yes, I blog)
VSC isn't perfect for sure, but how exactly do you take a _consistent_ snapshot with LVM? Snap and pray?
If your disk isn't consistent at all times, how do you deal with crashes? Restore from backup?
Finally! A year of moderation! Ready for 2019?
Try the command fsutil usn to play around with it. Of course, it's pretty useless if there's no app relying on it. (but very useful if there is, like for backups as parent said).
I'm not sure, but OS X might have something similar in HFS+, and use it for Time Machine and also Spotlight (know quickly which files were changed and reindex them).
.sig: No such file or directory
You need to totally remove the Windows partition from the harddrive and install one of these distros ..
davecb5620@gmail.com
Gotta reply even though its late.
Well, I'm going to assume the ext2/3 drivers are not buggy and then ask, why not just STOP fscking it if it bothers you that much?
Because in the case of a crash(yes... servers crash in the real world. Power outages happen... retards accidentally unplug it...). When a server goes down, I need it back up extremely fast. My time is valuable... I don't have 2 hours to devote to micro-manage an fsck. And don't tell me you don't have to micro-manage it. In Solaris, it will try its best to fix it, but drop you into single user mode to force fix some errors.
So really, WHY is it running so often that it bothers you in the first place?
Because I use to maintain a few hundred machines. At that scale, something is always broken or ready to break.
I'm the GP too, had to reply to myself :)
Thanks for the info, I've only dealt with the little window Networker provided to it.
You might be right about OS X, there's got to be something going on under the hood to make them as smooth as they are.