Moore's Law and Computers

Alignments to Content Standards: F-LE.A.2

Personal Computer hard disk capacity has grown at a remarkably steady exponential rate for several decades. In 1984 this capacity was about 1/100 of a gigabyte (one gigabyte is 1,000,000,000 bytes). In 1995 the capacity had increased to about 1 gigabyte.

1. Using this information, write an exponential function which models the PC storage capacity by year, starting in 1984.
2. According to your model, about how long does it take for the storage capacity to double?
3. In 2010, the storage capacity had increased to just over 500 gigabytes. Does this agree with the prediction given by your model?
4. According to your model, when will the PC storage capacity reach 100,000 gigabytes (or 100 terabytes)?

IM Commentary

The goal of this task is to construct and use an exponential model to approximate hard disk storage capacity on personal computers. This is an important and interesting context where an exponential model has performed exceptionally well for almost 30 years. It is also a context with which many students will be familiar. Eventually new technology will need to be developed in order for this memory increase to continue. In the meantime, personal computers will continue to rapidly become outdated in terms of their ability to perform memory intensive tasks.

For much more information about Moore's law, see http://en.wikipedia.org/wiki/Moore's_law. Moore's law is an estimate for the doubling time for storage capacity, in other words the answer to part (b) in the question. Moore initially thought that the doubling time would be close to one year and later revised this estimate to every two years. This problem gives students a chance to explore the accuracy of Moore's predictions which were made nearly 50 years ago.

Teachers may wish to be aware that there is some ambiguity in the word "gigabyte", in that it can be used in either the decimal sense -- representing $(1000)^3=10^9$ bytes, as is done in the task, or in the binary sense $(1024)^3=2^{30}$ bytes.

Solutions

Solution: using base e and natural log

1. We will use the variable $t$ to represent time, in years, since 1984. We will call $f$ the function that takes $t$ as its input and gives the storage capacity of a pc (in bytes) at time $t$ as its output. The given information can be captured by $f(0) = 1 \times 10^7$ and $f(11) = 1 \times 10^9$. An exponential model $f$ has the form $$f(t) = ae^{ct}.$$ Since $e^0 = 1$ we know that $f(0) = a$ so $a = 1 \times 10^7$. Using this and the assumption that $f(11) = 1 \times 10^9$ we find $$e^{11c} = 100.$$ This means that $c = \frac{\ln{100}}{11} \approx 0.42$. So our exponential model for the storage capacity of a pc is $f(t) = 10^7 \times e^{0.42t}$.

2. To find the doubling time according to our model, we need to solve the equation $f(t) = 2 \times 10^7$ or

$$10^7 e^{0.42t} = 2 \times 10^7.$$ Dividing both sides of this equation by $10^7$ leaves us with

$$e^{0.42t} = 2$$ and (taking the natural logarithm of both sides) this gives an estimate of about 1.7 years for the doubling time of computer storage capacity.

3. We know that 2010 is 26 years after 1984 so our model would predict a storage capacity of about $f(26)$ for the year 2010. We have $$f(26) = 10^7 \times e^{0.42 \times 26} \approx 55,000 \times 10^7$$ or about $5.5 \times 10^{11}$. This agrees very well with the actual data which says that in 2010 the storage capacity was slightly over 500 gigabytes.

4. To find when the storage capacity of the PC will reach 100,000 gigabytes we need to solve the equation $f(t) = 10^{14}$. Using our model for $f$ from part (a) this means we need to solve $$e^{0.42t} = 10^7.$$ Taking the natural log of both sides gives us $t = \frac{\ln{10^7}}{0.42}$ which is a little over 38 years.  Adding 38 to 1984 we predict that a PC will have 100,000 gigabytes of memory in 2022, provided the rate of growth remains roughly constant.

Solution: using the model ab^x and solving by graphing

1. We will use the variable $t$ to represent time, in years, since 1984. We will call $f$ the function that takes $t$ as its input and gives the storage capacity of a pc (in gigabytes) at time $t$ as its output. The given information can be captured by $f(0) = \frac{1}{100}$ and $f(11) = 1$. An exponential model $f$ has the form $$f(t) = ab^{t}.$$ Since $b^0 = 1$ we know that $f(0) = a$ so $a = \frac{1}{100}=0.01$. Using this and the assumption that $f(11) = 1$ we find $$b^{11} = 100.$$ This means that $b=100^{\frac{1}{11}} \approx 1.52$. So our exponential model for the storage capacity of a pc is $f(t) = 0.01(1.52)^x$.
2. To find the doubling time according to our model, we need to solve the equation $f(t) = 2$ or $$0.01(1.52)^{x} = 2$$ Dividing both sides of this equation by $0.01$ leaves us with $$1.52^x = 200$$ If a method using logarithms is available, we can take the log of both sides and find that $x \approx 12.7$, so doubling time is around $12.7-11=1.7$ years. Alternatively, we could graph $y=1.52^x$ and $y=200$ on the same $xy$-plane and find the point of intersection. The graphs intersect at approximately (12.7, 200), and doubling time is approximately 1.7 years by the same reasoning.
3. The year 2010 would be $t=2010-1984=26$ years. Evaluating $f(t)$ at $t=26$ gives $$f(26)=0.01(1.52)^{26} \approx 534.$$ This agrees very well with the data which says that in 2010 storage capacity was slightly over 500 gigabytes.
4. To find when the storage capacity of the PC will reach 100,000 gigabytes we need to solve the equation $f(t) = 100,000$. Using our model for $f$ from part (a) this means we need to solve $$0.01(1.52)^t = 100,000$$ Graphing $y=0.01(1.52)^t$ and $y=100,000$ simultaneously yields:  which shows the solution is a little over 38 years.  Adding 38 to 1984 we predict that a PC will have 100,000 gigabytes of memory in 2022, provided the rate of growth remains roughly constant.