Computers calculate really fast

When I teach computer science to fifth graders, the main concept I want them to remember is that computers work by doing calculations incredibly, insanely, mind-bogglingly fast. To get across the idea of just how fast they work, I tell a story which I thought I’d share here, too.

Let’s start by doing a few arithmetic problems.

3 + 7 = ?

5 + 12 = ?

420394 + 59382 = ?

How long did it take to solve those? The fastest you could conceivably calculate them (especially with big numbers) is about 1 per second. Now take a modern computer, such as the one sitting in front of you. How many of these can it calculate in just one second?

The answer is (roughly) a billion. One gigaherz means “a billion times per second.” In other words, a standard modern computer can answer a billion arithmetic problems, every second.

But just how big is a billion? That number is so large that it’s hard to comprehend. My favorite way to understand it involves paper. Suppose you had a billion sheets of paper, all in a stack (the normal way they’re stacked when you buy paper or put it in a printer). How tall would that stack be, if it had one billion (incredibly thin) pieces of paper?

Of course it depends a little on the thickness of the paper, but the answer is about 100 kilometers, or 60 miles high! Mt. Everest is less than 6 miles high, so let’s turn that stack of paper on its side and lay it along a freeway. To drive past every piece of paper in that stack at 60 mph would still take you a full hour! Reams and reams, paper after paper after paper.

So it would take you an hour just to drive past all those sheets of paper at freeway speeds, yet a computer does that many sheets worth of calculations every second! After many years of programming, I still find this astonishing. That is an incredible amount of power at your fingertips.