First experiences with ext4

Executive summary: ext4 rocks, check the numbers at the end!

With 2.6.28 arriving over Xmas I took the opportunity to upgrade my home desktop and laptop to it (the laptop had been running a number of RC releases quite happily). Everything was happy so I thought I’d try migrating my /home partition to ext4, but before I started I decided to run a quick Bonnie++ comparison between XFS and the new stable ext4 from the console before the rsync. The (very) rough numbers were:

XFS ext4
Block write (MB/s) 54 51
Block rewrite (MB/s) 23 24
Block read (MB/s) 51 50
Sequential creates (/s) 4470 17801
Runtime (minutes) 23 22

I didn’t note down the rest. So not a lot of difference there (or so I thought, but more on that in a bit). Using rsync to copy all my data over didn’t take too long and a quick shuffle of UUID’s in /etc/fstab and I rebooted and was happily using my shiny new ext4 logical volume. Everything was working fine but it wasn’t until I was poking in the logs a day or two later that I noticed this:

EXT4-fs warning (device dm-13): ext4_fill_super: extents feature not enabled on this filesystem, use tune2fs.

That’s unusual because since 2.6.23 that was meant to be enabled by default. A quick play with tune2fs under both Ubuntu Hardy and Intrepid showed that they didn’t support that option so I ended up grabbing
e2fsprogs from SourceForge
and building it myself. With that done I could use its mkfs.ext4 command to build a fully functional ext4 filesystem and get the far better message:

EXT4-fs: file extents enabled

Another long rsync later and I was up and running with ext4 with all the features I wanted.

Of course this meant that my initial ext4 numbers were without extents, so I’ve just done another run (though this time with X and a full KDE 4 session going) and was blown away by the results:

Version 1.03b       ------Sequential Output------ --Sequential Input- --Random-
                    -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine        Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
quad            16G           68123  17 30013   6           64239   8 363.1   1
                    ------Sequential Create------ --------Random Create--------
                    -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
              files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP
                 16 +++++ +++ +++++ +++ +++++ +++ +++++ +++ +++++ +++ +++++ +++
quad,16G,,,68123,17,30013,6,,,64239,8,363.1,1,16,+++++,+++,+++++,+++,+++++,+++,+++++,+++,+++++,+++,+++++,+++

real    18m18.005s
user    0m1.280s
sys     1m46.434s

That’s a full 2 minutes faster (and then some) and the I/O is just enormous!

So here’s that first table again, but with an extra column for ext4 with extents:

XFS ext4 ext4 + extents
Block write (MB/s) 54 51 68
Block rewrite (MB/s) 23 24 30
Block read (MB/s) 51 50 64
Sequential creates (/s) 4470 17801 Too fast
Runtime (minutes) 23 22 18

This looks fun.. 😉

A Different Christmas Gift

This year Donna and I decided that rather than sending cards and presents to family and friends this year we would instead make a donation of GBP 100 on all our behalfs to the World Land Trust (David Attenborough is their patron) for their appeal to purchase land to protect wildlife corridors vital for Orang-Utans in Borneo.

Their page on the project is here:

http://www.worldlandtrust.org/projects/malaysia.htm

and the donations page (with our message, amongst everyone else’s) is here:

http://www.justgiving.com/worldlandtrustborneo

Spot the typo by me.. 😉

Hv3 – minimal browsing at its fastest

Wow, this is really impressive. After reading this LWN article about Hv3, a Tk/Tcl based web browser I decided to give it a go and it’s just great. Lightweight and blindingly fast!

Now this is a browser that’s still in alpha, so expect odd behaviour and bugs, but it’s still remarkably useable. The biggest issue I’ve had with it in a few minutes of playing has been that it doesn’t support HTTP authentication but that just stops me testing it on a couple of sites at work.

Well done folks, keep up the good work!

Using Internet Explorer ? Switch Browser Now!

Oh joy, the BBC is reporting

Users of the world’s most common web browser have been advised to switch to a rival until a serious security flaw has been fixed.

It’s yet another security hole in Internet Exploder, this time a heap overflow that works against IE 7 as well as IE 6 and the betas of IE8.

It’s being actively exploited too (again from the Beeb):

As many as 10,000 websites have been compromised since last week to take advantage of the security flow (sic), said antivirus software maker Trend Micro.

I’m pretty sure the writer meant flaw, not flow.. 🙂

Please use Firefox instead!

Spreadfirefox Affiliate Button

Breathing Earth – simulating births, deaths and CO2

This is pretty neat, Breathing Earth is a flash based simulation of the real time statistics of births, deaths and CO2 emissions across the planet. You can mouse over countries to see how many people have died and been born whilst you’ve been watching, how much CO2 has been emitted and the rates.

It also has the per-capita emission numbers which are quite illuminating (especially if you listen to all this noise about getting India and China on board). So, for example, here are a few examples of the annual per capita CO2 emissions (in tonnes) of some countries:

USA : 19.66
Australia : 18.17
Japan : 10.1
UK : 9.23
France : 6.72
China : 3.7
India : 1.17

“We have ‘survival’ emissions, you have lifestyle emissions.”Shyam Saran, India’s envoy to the UN climate conference in Poznan, Poland