How big is a /64 - M&Ms in the Great Lakes


  • Thu 14 January 2021
  • misc

A popular slide for conceptualizing how many addresses are in an IPv6 /64 (64 bits of network, 64 bits of host) claims that if you filled all five Great Lakes with M&Ms, that would be approximately 2^64 M&Ms.

While looking for an example of that slide to share to inform an IPv6 discussion, I saw a blog post that claimed that the math was all wrong and that it didn't come even remotely close to filling all five great lakes.

As the originator of that Fermi Question style assertion, (with the original fine print that it was almond M&Ms - it turns out that peanut M&Ms would be more accurate), I felt the need to correct the correction, and show my work.

To start with, discussions of things like sphere packing are a needless distraction. This is an order of magnitude problem. Bringing up things like lattice packing (common densities are 0.55 to 0.74) makes the math more difficult while not contributing to whether the answer is way out of line for this.

For the purposes of this discussion we will assume that an M&M is 1 cubic centimeter.

We'll be using dc(1), the arbitrary precision RPN calculator that comes free with Unix for all our calculations.

First, what is 2^64?

2 64 ^ p
18446744073709551616

Or approximately 1.844 x 1019

Next, we calculate the number of cubic centimeters in the Great Lakes. Our friends at epa.gov offer us the following in cubic kilometers:

Reference 1 2 3 4 Average
Lake Superior 12,100 12,230 11,600 12,088 12,004
Lake Michigan 4,920 4,920 4,680 4,918 4,860
Lake Huron 3,540 3,537 3,580 3,543 3,550
Lake Erie 484 483 545 484 499
Lake Ontario 1,640 1,637 1,710 1,638 1,656
Lake St. Clair n/a n/a n/a 4 4
Totals 22,684 22,807 22,115 22,675 22,573

References:

References:

  1. Coordinated Great Lakes Physical Data. Coordinating Committee on Great Lakes Basic Hydraulic and Hydrologic Data. Chicago, IL and Cornwall, ON. p. 9. (1977).
  2. Large Lakes Ecological Structure and Function. Max M. Tilzer and Colette Serruya, eds. Springer-Verlag. Berlin-Heidelberg, p 26 (1990) [Derived from Inventory of the Morphometric and Limnological Characteristics of the Large Lakes of the World. Charles E. Herdendorf, The Ohio State University. Technical Bulletin OHSU-TB-17, Sea Grant Program. March 1984. p. 67.]
  3. Atlas of World Water Balance (Explanatory Text). USSR National Committee for the International Hydrological Decade, Leningrad, p 32.(1977)
  4. The Water Encyclopedia, 2nd Edition. F. van der Leeden, F.L. Troise and D.K. Todd. Lewis Publishers, USA. p. 188. (1990)

OK, so now we have 22573 km3 of water in the Great Lakes. 1000m in a km, so there are:

1000 1000 * 1000 * p
1000000000

m3 in a km3. In other words, 1 x 109 - only a billion cubic meters. Table stakes..

But we're not looking for cubic meters, we're looking for cubic centimeters.

100 100 * 100 * p
1000000

cm3 in an m3.

So now, to put it all together:

1000000 1000000000 * 22573 * p
22573000000000000000

or approximately 2.225 x 1019 vs 264 being 18446744073709551616 or approximately 1.844 x 1019

In other words, enough to fill the five Great Lakes and heap up a little bit. Application of sphere packing correction would tend to make the heaps taller, potentially by a fair amount, since it applies to imperfections of the fill and empty space in the lakes.

Once again, one should not attempt to eat 264 M&Ms of any type or flavor.