You are viewing an archived version of danielfischer.com

 

ZFS leaked to become Leopard’s default FS; Research made me laugh.

Published: June 7th, 2007

Leopard’s new filesystem will be ZFS, that’s actually pretty exciting. Here’s some extra details as well!

Okay, so on digg I found this story:

Perhaps overcome with excitement (and forgetting that Apple doesn’t like such pre-emptive disclosures), Sun’s Jonathan Schwartz announced today at Sun event in Washington D.C. that Apple would be making ZFS the file system in Mac OS 10.5 Leopard.

Okay, cool I thought - but then I wanted to know what the difference and benefits were. Obviously we all know we should check out wikipedia for that, so up I go… - After reading a bit I read this:

If 1,000 files were created every second, it would take about 9,000 years to reach the limit of the number of files.

Which makes me go, “uh wow - okay that’s big!” But just wait, something I read made me laugh for a good 5 minutes because of how ridiculously mathematical and insane it is, just to prove the above sentence.

Project leader Bonwick said, “Populating 128-bit file systems would exceed the quantum limits of earth-based storage. You couldn’t fill a 128-bit storage pool without boiling the oceans.”[1] Later he clarified:

Although we’d all like Moore’s Law to continue forever, quantum mechanics imposes some fundamental limits on the computation rate and information capacity of any physical device. In particular, it has been shown that 1 kilogram of matter confined to 1 liter of space can perform at most 1051 operations per second on at most 1031 bits of information [see Seth Lloyd, "Ultimate physical limits to computation." Nature 406, 1047-1054 (2000)]. A fully populated 128-bit storage pool would contain 2128 blocks = 2137 bytes = 2140 bits; therefore the minimum mass required to hold the bits would be (2140 bits) / (1031 bits/kg) = 136 billion kg.

To operate at the 1031 bits/kg limit, however, the entire mass of the computer must be in the form of pure energy. By E=mc², the rest energy of 136 billion kg is 1.2×1028 J. The mass of the oceans is about 1.4×1021 kg. It takes about 4,000 J to raise the temperature of 1 kg of water by 1 degree Celsius, and thus about 400,000 J to heat 1 kg of water from freezing to boiling. The latent heat of vaporization adds another 2 million J/kg. Thus the energy required to boil the oceans is about 2.4×106 J/kg * 1.4×1021 kg = 3.4×1027 J. Thus, fully populating a 128-bit storage pool would, literally, require more energy than boiling the oceans.

I’m laughing, but it’s probably from my brain hurting on how ridiculously large this is, and how someone came up with the numbers to prove this.

Boiling Water

Glad you enjoyed it — it was an amusing exercise to hunt down the various constants (mass of the oceans, latent heat of vaporization, etc) and see which quantity was larger. Given the sheer magnitude of the numbers, the fact that they’re so close to equal (within 3x of each other) was a pleasant surprise.

gravatar

Haha, wow that was a quick response, especially from the author! I am curious, how did you come across my post so instantly?

I really must thank you for the information, it totally made my night. :)

It put a special touch of glee in my heart of geekiness, ha.

gravatar

blogsearch.google.com, search for zfs — it’s *way* better than feedster et al. blogsearch is still in beta, but it’s been out there for at least a year now.

gravatar

Hm, very interesting! Thanks.

gravatar
Enter your comment

Ready. Set. Go.

In terms of the formatting, you're allowed to use markdown, textile, or basic html; it's truly up to you -- what strikes your fancy?

You don't have to worry about your e-mail address being sold to a russian-spam-mafia. I'm only going to use it for my own weird needs; like asking you out for a date on a lonely night of coding.