The Progress of Computing William D. Nordhaus1 Yale University and the NBER July 16, 2001 version 3.3 Abstract The present study analyzes computer performance over the last century and a half. Three results stand out. First, there has been a phenomenal increase in computer power over the twentieth century. Performance in constant dollars or in terms of labor units has improved since 1900 by a factor in the order of 1 trillion to 5 trillion, which represent compound growth rates of over 30 percent per year for a century. Second, there were relatively small improvements in efficiency (perhaps a factor of ten) in the century before World War II. Around World War II, however, there was a substantial acceleration in productivity, and the growth in performance from 1940 to 2001 has averaged 55 percent per year. Third, this study develops estimates of the growth in computer power relying on performance rather than on input-based measures typically used by official statistical agencies. The price declines using performance-based measures are markedly higher than those reported in the official statistics. __________________________________________________________ What has been the progress in computing? While there are many worthy estimates of productivity and prices of computers over the last five decades, to date little attention has been paid to linking the data to pre-World-War-II technologies or even hand human calculations. The present note uses data from different sources and investigates the progress of computing over the last century and a half, including estimates of the progress relative to manual calculations. The usual way to examine technological progress in computing is either 1 The author is grateful for comments from Ernst Berndt, Paul Chwelos, Robert Gordon, Steve Landefeld, Phil Long, and Chuck Powell. < prog_071701.wpd > -1- through estimating the rate of total or partial factor productivity or through examining trends in prices. For such measures, it is important to use constant- quality prices so that improvements in the capabilities of computers are adequately captured. The earliest studies examined the price declines of mainframe computers and used computers which date from around 1953. Recent work has been undertaken by the U.S. statistical agencies and covers a wide range of computer technologies. Early studies found annual price declines of 15 to 30 percent per year, while more recent estimates in the national income and product accounts find annual price declines of 25 to 45 percent.2 While many analysts are today examining the impact of the “new economy” and particularly the impact of computers on real output, inflation, and productivity, we might naturally wonder how new the new economy really is. Mainframe electronic computers were crunching numbers impressively long before the new economy hit the radar screen, and mechanical calculators were leading to rapid improvements in computational abilities even before that. How does the progress of computing in recent years compare with that of earlier epochs of the computer and calculator age? This is the question addressed in the current study. I. A Short History of Computing Computers are such a pervasive feature of modern life that we can easily forget how much of human history was lived without even the most rudimentary aids to calculation, data storage, printing and copying, rapid communications, or computer graphics. It is roughly accurate to say that most calculations were done by hand until the beginning of the 20th century. Before that time, mechanical devices such as the abacus (which originated in China about the 13th century), the Napierian logarithm (from 1614), and a host of ingenious devices designed by Leonardo da Vinci, Blaise Pascal, and Thomas de Colmar were invented but generally did not find widespread use among clerks and accountants. In the late 1880s, a workable set of mechanical calculators was designed that gradually took over most laborious computational functions for the next half century. Two standard designs were circular Odhner machines, and machines 2 See J. Steven Landefeld and Bruce T. Grimm, “A Note on the Impact of Hedonics and Computers on Real GDP,” Survey of Current Business, December 2000, pp. 17-22 for a discussion and a compilation of studies. -2- designed as a matrix array of keys produced by Felt Comptometer, American Arithmometer, and later Burroughs. We have a 1909 report from Burroughs which compared the speed of trained clerks adding up long columns of numbers by hand and with a Burroughs calculator; these showed that the calculator had an advantage of about a factor of six: Ex-President Eliot of Harvard hit the nail squarely on the head when he said, “A man ought not to be employed at a task which a machine can perform.” Put an eight dollar a week clerk at listing and adding figures, and the left hand column [on p. 154 of the book] is a fair example of what he would produce in nine minutes if he was earning his money. The column on the right shows what the same clerk could do in one-sixth the time, or one and a half minutes.3 The next revolutionary development in computation was the introduction of punched-card technology. We describe this system in detail to give the flavor of the early development of computers. The punched card system developed by Hermann Hollerith (whose company later evolving into IBM) has been thoroughly described in the historical literature and its performance characteristics are clear. The Electrical Tabulating System was designed by Herman Hollerith in the late 1880s. Although it saw some limited use in hospitals and the War Department, the first serious deployment was for the 1890 census. Using a specially designed machine known as a pantograph, clerks entered census data onto punch cards, which the tabulator read one at a time. The tabulator’s operator pressed a grid of telescoping metal pins down onto each card, and the pins penetrated through punched holes in the card to complete electrical circuits. Certain circuits and combinations of circuits incremented mechanical counters, and the values read off these counters were used to produce the census summary tables. To speed further tabulations, a sorter was attached to the tabulator. When the tabulator read a card, a signal would travel to the sorter, and an appropriate box on the sorter would open. There were inaccuracies in the tabulations because of the now- famous chads that often did not become detached and properly read. The operator could then place the card in the box, and move on to the next card, Each census card was a 12 by 24 grid, allowing for 288 punch locations. Since the tabulator 3 Burroughs Adding Machine Company, A Better Day’s Work at a Less Cost of Time, Work and Worry to the Man at the Desk: in Three Parts Illustrated, Third Edition, Detroit, Michigan, 1909, pp. 153-154. -3- handled one card at a time, word size was 288 bits. Although the tabulator was extremely fast, it was the opposite of the modern electronic computer in that it could perform only one function. It was unable to subtract, multiply, or divide, and its addition was limited to simple incrementation. Its only function was to count the number of individuals in specified categories and for this sole function it was far speedier than all other available methods. During a government test in 1889, the tabulator processed 10,491 cards in 5 hours, 28 minutes, averaging 0.533 cards per second. In a sense, the Hollerith tabulator was like the IBM’s “Deep Blue” chess-playing program, which is the reigning world champion but couldn’t beat a 10-year-old in a game of tic-tat-toe. Over the next half-century, several approaches were taken to improving the speed and accuracy of computation and are familiar to most people. The major milestones were the development of the principles of computer architecture and software by John von Neumann (1945), the first electronic automatic computer, the ENIAC (1946), the development of the first Intel microprocessor (1971), personal computers (dated variously from the Simon in 1950 to the Apple II in 1977 to the IBM PC in 1981), and the introduction of the world wide web (1989). Overall, we have identified 107 computing devices in this study for which minimal price and performance characteristics could be identified (see Appendix Table 2). II. Measuring Computer Performance Background on measuring performance Measuring computer power has bedeviled analysts because computer characteristics are multidimensional and evolve rapidly over time. The earliest calculators were often limited to one instruction (addition), but could sometimes parlay this into other arithmetic functions (multiplication as repeated addition). Modern computers have much more complex instruction sets and perform the instructions much more rapidly and accurately. For the most part, the performance measures examined in this study are limited to the simplest instructions (addition and multiplication) but later performance estimates are broadened either by the use of hedonic measures or synthetic benchmark calculations. -4- We can distinguish two fundamentally different approaches to measuring computer power or prices: (1) measures that derive from the performance and price of inputs or components of computers and (2) measures that are driven off performance characteristics. In general, economic approaches, including “hedonic” price indexes, use the first approach, while computer scientists, users, and trade journals tend to emphasize performance. For the most part, this study relies primarily on performance measures, and we examine the relationship of performance and hedonic measures in a later section. Measures of computer performance are extremely controversial among computer scientists and analysts. Early measures focused on elementary statistics such as the time to perform additions and subtractions or the “clock time” of the central processing unit. As computers undertook more varied tasks, and especially as they began to rely upon high-level languages, these rudimentary measures became less useful indicators of performance. Increasingly, analysts rely upon benchmark tests that measure the time to complete a suite of tasks, such as matrix inversion, word processing, games, and so forth. There exists no adequate measure of performance that can include the entire array of devices from manual calculations or the Burroughs adding machine to the earliest PC or the latest Pentium microprocessors. I have therefore created a spliced measure of performance called “MIPS-E” or “millions of instructions per second equivalent.” The precise definition is quite complicated, but to a first approximation a MIPS-E machine is a device which can add 20 million 32-bit integer numbers in one second. I begin by describing some of the metrics and benchmarks used to put the devices on a common footing. Calculations per second and MIPS One of the most common measures of computer performance is MIPS, or millions of instructions per second. In simple terms, IPS measures the number of machine instructions that a computer can execute in one second. MIPS has been used as a benchmark for many years and therefore is useful for creating performance measures for historical purposes. The MIPS definition measures performance in terms of “instructions per second.” To understand the logic of this measure, we begin with some elementary definitions. Every computer contains an internal clock that regulates the rate at which instructions are executed and synchronizes all the various computer -5- components. The speed at which the microprocessor executes instructions is its “clock speed.” The other major definition is an instruction. An instruction is an order given to a computer processor by a computer program. At the lowest level, each instruction in a digital computer is a sequence of 0s and 1s that describes a physical operation the computer is to perform; for example, an instruction might be to add to numbers or to move a “word” from one location to another. As of 1960, computers used between 20 and 60 different elemental instructions, such as moving, adding, subtracting, and checking. Instructions differ in terms of the size of the “word” that is addressed. The size of a word varies from one computer to another, depending on the CPU. In the earliest computers (such as the Whirlwind I), words were as short as 16 binary digits or 5 decimal digits. Most serious personal computers today use 32-bit words (4 bytes). On large mainframes, a word can be as long as 64 bits (8 bytes). The most common instruction in early computers used one word, although the length might be one-half or two words. Using these definitions, we can then define the number of instructions per second (usually measured as millions of instructions per second, or MIPS) by MIPS = clock rate/(cycles per instruction × 106) Hence, a computer which executes 10 million instructions in 2 seconds has a rating of 5 MIPS. Given the discussion above, it is easy to see why the simplest version of MIPS is defective in a number of respects. First, it does not specify the size of the word or the nature of the instruction. Long words have more computational value than short words. Some instructions (such as division) require much more computer power than simple instructions (such as addition). The definition does not consider the mix or the number of instructions. In short, it violates the elementary rule of index numbers of considering a fixed bundle of characteristics. To make MIPS-E a meaningful measure, it is necessary to specify the exact nature of the instruction. For example, the benchmark might be to determine the time to add 1 million randomly generated 32-bit words. Clearly, changing the size or nature of the operation or the size of the word would affect the speed, so standardization in this dimension is essential since different instructions require more or less time than others. -6- An information-theoretic measure The only study that I have uncovered that attempts to calculate the long- term performance of computational devices is by Hans Moravec, a computer scientist at Carnegie-Mellon. In his description of the earliest computers, Moravec uses an “information-theoretic” approach which relates performance to production of information.4 This measure also solves some of the most egregious problems with using MIPS as a performance measure. Under the information- theoretic approach, computing power is defined as the amount of information delivered per second by the machine – that is, the quantity of information produced as the machine moves from one internal state to another. The information delivered is in the sense of Shannon as the “surprise” about the outcome. Quantitatively, if there is a probability p that the machine will move into one of two binary states, then the information delivered if it does go into that state is -log 2 (p) bits of information. This can then be put on a standardized basis by considering words with a standard length of 50 bits (equivalent to a 12-digit number), and instructions which have length of one word. In other words, the benchmark programs analyzed are assumed to contain about 50 bits of information per instruction. Hence, adding two 12-digit numbers will produce an answer that has about 50 digits of information in the sense used here. Finally, it is assumed for Moravec’s measure that the only instructions considered are addition and multiplication, and that these are weighted seven to one in the instruction mix. Using this definition, the information-theoretic definition of performance is: Computer power = [6 + log2 (memory) + word length]/ [(7 × add time + mult time)/8] Applying this formula to a machine that can perform 1 million additions per second, with 32 bit words, a multiplication time five time slower than the addition time, and 640 bits of memory yields an equivalent of 1 MIPS-E. The attractiveness of this approach is that each of these parameters is available for virtually all computers back to 1940, and for some calculators before that period. The disadvantage is that it omits many of the important instructions 4 See Moravec, Mind Children: The Future of Robot and Human Intelligence, Harvard University Press, Cambridge, MA, 1988, especially Appendix A2 and p. 63f. -7- of modern computers and of course it considers only machine-level instructions and omits the advantages of modern software, higher-level languages, and operating systems. Up to now, we have verified most of the estimates of performance for computers back to about 1940 using the information-theoretic measures or other benchmark tests. In addition, we have verified the data for 10 of the 18 machines which date before 1943. The data on manual calculations were taken from a Burroughs monograph and were verified by hand calculations which suggest that the estimates are tolerably close. There are major discrepancies between different estimates of the performance of early machines, with estimates varying by as much as a factor of three. Standardized Benchmark Tests The MIPS measure is today generally thought inferior to other benchmarks. MIPS refers only to the central-processing unit (CPU) speed, whereas the speed of real-world applications will depend upon memory, input-output speed, and the instruction mix. More recent machines are evaluated using complex sets of performance benchmarks. A benchmark is a test that measures the performance of a system or subsystem on a well-defined set of tasks. There is an entire industry devoted to devising benchmarks. This is not surprising given the diversity in types and uses of computers; after all, computers are used for word processing, cryptography, econometric estimation, air-traffic control, computer-assisted design, payrolls, and operating anti-missile systems. For example, you can test the performance characteristics of your personal computer on line using WinTune, which has eight tests: CPU Tests, Advanced CPU Tests, Video Tests, Direct3D Tests, Advanced Direct3D Tests, OpenGL Tests, Memory Tests, Disk Tests.5 Supercomputers often use the LINPACK benchmark, which solves a dense set of linear equations. For purposes of historical comparison, an important benchmark is “Dhrystone MIPS.” This benchmark relies on the Dhrystone benchmark, which is a short synthetic benchmark program developed in 1984 and intended to be representative for system (integer) programming. Over the last two decades, MIPS ratings have been set by comparing the Dhrystone rating of a machine with the 5 See http://wintune.winmag.com/ . -8- Dhrystone rating of a benchmark machine. The standard is that a Digital Equipment Corporation VAX 11-780 is assumed to be exactly a 1 MIPS system. (In fact, the VAX 11-780 is estimated to have an addition time between 0.5 and 2 million additions per second with 32 bit words, so this assumption does seem roughly realistic.) Until the mid-1990s, MIPS ratings for other systems were derived by dividing the Dhrystone rating of the machine in question by the VAX 11-780‘s Dhrystone rating of between 1657 (version 2.1) and 1758 (version 1.1). Note that this implies that if the 11-780 did indeed execute an average of one million instructions per second, a MIPS-E rating derived by the benchmark ratio would be in terms of VAX instructions, not the instruction set of the rated system. Since the VAX is a Complex Instruction Set Computer (CISC), systems that use a Reduced Instruction Set Computer (RISC) need to execute more instructions than the VAX to do the same amount of work. Recent benchmarks of Intel microprocessors generally estimate a ratio of 2 MIPS-E per MHZ. The original Dhrystone test system is in fact obsolete in terms of current machine architecture. The most widely used benchmarks for personal computers today are those designed by SPEC, or the Standard Performance Evaluation Corporation. The current version used for personal computers is SPEC CPU2000.6 SPEC CPU2000 is made up of two components that focus on different types of compute intensive performance: CINT2000 for measuring and comparing computer-intensive integer performance, and CFP2000 for measuring computer- intensive floating point performance. One the whole, the SPEC calibrations are highly correlated with the Dhrystone MIPS calculations, but the relative performance of different benchmarks may vary by as much as 25 percent across different benchmarks. In the calibrations that we use for machines of the last 2 years, we have compared performance using both the SPEC benchmarks as well as the Dhrystone MIPS rating system. The SPEC2000 gives a ratio of 1.77 MIPS-E per MHZ for optimized systems, whereas the Dhrystone benchmark given an average of 2.3 MIPS-E per MHZ for the three most recently included machines. The calibration between benchmarks and MIPS-E is shown in Appendix Table 1. Hedonic approaches 6 See http://www.spec.org/osg/cpu2000/ . -9- A fourth approach is the construction of prices using hedonic indexes, from which performance data are implicitly calculated as the inverse of the rate of change in prices. The hedonic approach, more accurately called “constant- quality” measures, attempts to measure the change in “quantity” of goods by examining the change in characteristics along with measures of the importance of the different characteristics. The approach can be described briefly as follows: A good is comprised of a bundle of characteristics that are relevant producers and consumers. For example, Chwelos investigated the characteristics of computers that were important for users and information scientists in 1999 and found the top six characteristics were (1) performance, (2) compatibility, (3) RAM, (4) network connectivity, (5) industrial standard components, and (6) operating system.7 We can think of a good available at time t as being a bundle of n characteristics, xt = [x1t , x2t , ... , xnt ], where xit is the measure of performance characteristic i at time t. Often the bundle is quite complex, but as long as the characteristics do not change over time, measuring price and quantity is straightforward. With computers, however, not only are the performance characteristics rapidly evolving (as seen in the increase in clock speed). An even thornier issue is the fact that the important characteristics change. For example, two of the six performance characteristics discussed in the last paragraph, number 1 (performance) and number 3 (RAM) can be at-least-imperfectly tracked back for at least a half-century. Network connectivity is a brand-new feature, while operating systems have evolved from simple wiring devices to Windows-type operating systems with tens of millions of lines of high-level (secret) code that probably is beyond the ken of a single individual. Under the hedonic or constant-quality approach, we estimate the prices of bundles of characteristics by regression analysis and then measure prices changes as the change in the value of the bundle by measuring the prices times the changes in quantities. 7 See Paul Chwelos, Hedonic Approaches to Measuring Price and Quality Change in Personal Computer Systems, Ph. D..Thesis, the University of Victoria, 1999,p. 43. Performance was defined as a “characteristic of the a number of components: CPU (generation, Level 1 cache, and clock speed), motherboard architecture (PCI versus ISA) and bus speed, quantity and type of Level 2 cache and RAM, type of drive interface (EIDE versus SCSI).” -10- In considering hedonic approaches, we can separate estimation approaches into two different ones – estimation relying upon the prices of inputs and using prices of outputs. To use the computer example, we might either focus on the hedonic price of a bundle of input or component characteristics (such as speed of a processor, size of RAM, size and weight of a machine, etc.). Alternatively, we might focus on the outputs – measures of how well the computer actually solves some of the problems for which users need it (such as solving a linear- programming problem, scheduling aircraft, or searching for a document). One of the persistent difficulties with hedonic price estimates in general, and those for computers in particular, is that they have tended to focus on input or component characteristics rather than on performance variables.8 As an extreme example of how misleading this can be, we can compare the prices of a CD containing recordings of Mozart string quartets with an index of the price of musicians and string instruments. We would not be surprised if the indexes diverged greatly. In an actual example from an earlier study, I examined the case of lighting by estimating prices constructed from linked input prices (candles, kerosene, electricity, etc.) and those as the price of the output (lumen-hours). From this, I concluded that there was a major discrepancy between the input-based approach and the output- or performance-based approach.9 Similar questions arise in the case of computers. Generally, hedonic studies rely on measures of the prices of components, brand names, as well as some 8 This point has been sometimes noted among analysts in this area. For a recent discussion, see Paul Chwelos, “Approaches to Performance Measurement in Hedonic Analysis: Price Indexes for Laptop Computers in the 1990’s”, Graduate School of Management, University of California, Irvine, California, August 18, 2000. The point was discussed as early as 1989 by Jack Triplett, who stated, “None of these synthetic benchmarks has yet been used in hedonic functions for computer processors. Since finding a satisfactory speed measure is the biggest challenge to measuring price and technological change in computer processors, future work will no doubt explore the usefulness of synthetic benchmarks.” (See “Price and Technological Change in a Capital Good: A Survey of Research on Computers,”in Jorgenson D. W. and R. Landau, eds., Technology and Capital Formation. Cambridge, MA, MIT Press, 1989, 127-213.) 9 See William Nordhaus, “Do Real Output and Real Wage Measures Capture Reality? The History of Light Suggests Not," Robert J. Gordon and Timothy F. Bresnahan, The Economics of New Goods, University of Chicago Press for National Bureau of Economic Research, 1997, pp. 29-66. -11- component performance indexes. Some studies combine rudimentary performance measures, such as MIPS, with component characteristics and other dummy variables. There are virtually no estimates of computer prices that rely upon the actual performance of computers in benchmark tests.10 In principle, if the rigorous assumptions of hedonic theory apply, the input and output approaches will give the same answer. In practice, there are many reasons for divergence, and we have no empirical evidence that input-based approaches are reliable proxies for performance-based measures. In the hedonic model, the marginal (or shadow or imputed) price of an attribute must equal both the marginal valuation to consumers and the marginal cost to producers. In principle, the marginal price should be declining smoothly and rapidly for characteristics which display rapid technological change. One symptom of the inapplicability of input-based hedonic approaches is coefficient instability. This can be illustrated in the careful study by Berndt, Griliches, and Rappaport.11 Their year-by-year regressions show that the coefficients on random access memory, size of hard disk, weight, and size have inconsistent (changing) signs, while the coefficient on speed changes by a factor of more than 10 from year to year (see their Table 4). The problems can also be seen in the resulting price indexes for desktop computers, where estimates of the average annual rate of change of the quality-adjusted price indexes range from - 9.7 to -36.6 percent per year for the 1989-92 period depending upon the specification. A second problem which seems to characterize the personal computer market is that imperfect competition may lead vendors to overprice high-performance models relative to older models, which leads to a downward bias of matched-model price indexes relative to performance-based price indexes.12 10 The major exception See Paul Chwelos, Hedonic Approaches to Measuring Price and Quality Change in Personal Computer Systems, 1999. 11 See Ernst R. Berndt, Zvi Griliches, and Neal J. Rappaport,”Econometric estimates of price indexes for personal computers in the 1990s,” Journal of Econometrics, vol. 68, 1995, pp. 243-268. 12 See Michael Holdway, “Quality-Adjusting Computer Prices in the Producer Price Index: An Overview,” available at http://stats.bls.gov/ppicomqa.htm , undated but apparently from 1999. -12- Notwithstanding this critique, is important to emphasize that the input- based hedonic approach is far preferable to the naive “price the box” approach that prevailed in the national income accounts until December 1985 for computers and continues to prevail for virtually the entire array of other goods and services. We may be unsure whether desktop computers were declining at -9.7 or -36.6 percent per year, but we can be confident that they were not rising or constant, as was assumed in the pre-hedonic days. But while hedonic input-based approaches are an advance over earlier approaches, they may be misleading and therefore inferior to performance-based benchmarks to the extent that the characteristics are incompletely included or if the estimated shadow prices of the characteristics are imperfectly estimated. Incorrect imputed prices are particularly likely when there are strong non- linearities in the relationship between performance and components. For example, there is a strong nonlinearity between performance and the combination of clock speed, input-output speed, and the size of random-access memory. Because most input-based hedonic models treat different attributes in a linear fashion, they may have trouble capturing the performance of different models. III. Data The data used in this study draws heavily on data prepared by Dr. Hans Moravec in his study of robotics.13 This source contains data on add time, multiplication time, device cost, MIPS equivalent, memory, and word length. A further source is from Dr. Ray Kurzweil from his study of artificial intelligence.14 Data for early computers (from 1945 to 1961) appear to have been drawn from technical manuals of the Army Research Laboratory, which was an exhaustive and careful study of the performance characteristics of systems from ENIAC 13 Hans P. Moravec, Robot : Mere Machine to Transcendent Mind, Oxford University Press, 1998 and “When will computer hardware match the human brain?”, Journal of Transhumanism, vol. 1, March 1998. The data are available at www.transhumanist.com/volume1/moravec.htm . 14 Ray Kurzweil, The Age of Spiritual Machines : When Computers Exceed Human Intelligence, Viking Press, 1999. The data are available at www.penguinputnam.com/kurzweil/excerpts/chap1/ch1note19.htm . -13- through IBM-702.15 Data on the most recent computers were gathered by the author using the benchmark procedures discussed in the last section. Most of the data for the period since World War II have generally been verified from published sources and technical reports. The wage rate data were prepared by the author and are from standard sources, particularly the U.S. Bureau of Labor Statistics. The data for the earliest calculators and computers (for the period 1857 through 1945) were not explained in the original sources, and inquiries to the authors produced no useful responses on the methodologies by which the performance characteristics of the earliest computers were derived. With the help of Eric Weese of Yale University, we were able to track down at least partial performance data on 10 of the 18 earliest systems.16 To date, we have not found reliable data on eight of the other early machines.17 Given the difficulties of collecting data on the earliest machines, along with the problems of making the measures compatible,18 we regard the estimates for the 1890-1945 period as potentially unreliable. There are sometimes major discrepancies among the different sources, and where sources differ, the average of the different sources is used. The data underlying the figures and tables are shown in Appendix Table 2. 15 See particularly Martin H. Weik, A Survey of Domestic Electronic Digital Computing Systems, Ballistic Research Laboratories, Report No. 971, December 1955, Department of the Army Project No. 5b0306002, Ordnance Research And. Development Project No. Tb3-0007, Aberdeen Proving Ground, Maryland available at http://ed-thelen.org/comp-hist/BRL.html . This was updated in Martin H. Weik, A Third Survey of Domestic Electronic Digital Computing Systems, Report No. 1115, March 1961, Ballistic Research Laboratories, Aberdeen Proving Ground, Maryland, available at http://ed-thelen.org/comp-hist/BRL61.html#table-of-contents . 16 Manual calculations, Scheutz Difference Engine, Hollerith Tabulator, Steiger Millionaire, Automatic Tabulator, Burroughs Model 9, Adding Tabulator, Zuse-3, Harvard Mark I, and Atanasoff Berry Computer (ABC). 17 Original Odhner, Monroe Calculator, IBM Tabulator, IBM 601, Zuse-1, Zuse-2, BTL Model 1, and Bell Calculator Model 1. 18 For the earliest machines, the definition of memory is particularly tricky because some machines (such as the Hollerith tabulators) had only running totals and no memory. Similarly, some machines had no capabilities to multiply. -14- The only non-trivial calculation is the cost per instruction. These calculations include primarily the cost of capital. We have also included estimates of operating costs as these appear to have been a substantial fraction of costs for many of the computers and calculators before the era of personal computing. For the capital cost, we estimate a user cost of capital with a constant real interest rate of 10 percent per year, an exponential depreciation rate of 30 percent per year, and a utilization factor of 2000 hours per year. These assumptions are likely to be wide of the mark for some technologies, but given the pace of improvement in performance, even errors of 10 or 20 percent for particular technologies will have little effect on the overall results. To paraphrase Bob Gordon’s remark, in this area economics is a one-digit science. IV. Results Overall trends I now discuss the major results of the study. It will be useful to start with the overall picture in Figure 1, which shows trend in the cost of computing over the last century and a half. It will be best to start by examining the vertical axis, which measures the price of a MIPS equivalent of computing in 1998 prices, running on a scale from $10!8 per MIPS-E to $1010 per MIPS-E, that is by 18 orders of magnitude. Recall that the performance measure here is “MIPS equivalent,” which is the information-theoretic definition for the earliest devices, actual MIPS-E for the period from 1945 through about 1978, and more general benchmarks since 1978. The basic picture is simple and striking. There was relatively little progress in computing from the mid 1800s until around 1940. From that time, the progress has been rapid and virtually continuous. Figure 2 shows the cost of computing for different fundamental technologies. There was virtually no progress during the age of mechanical calculators and computers. Once the switch was made to modern computer architecture, the progress was virtually unbroken even as the transitions were made from one major technology to another. The decline in the cost of computation from the earliest period to today ranged from around $10,000 per MIPS-E in the late 19th century to around $0.0000001 ($10!7) per MIPS-E today, for an improvement of approximately a trillion, or 1012. A further interesting and analytically useful approach is shown in Figure 3. -15- This shows the cost of computer power relative to labor’s cost.19 For this graph, we have put the cost in terms of labor’s wage of the cost of performing an instruction or operation. Relative to the price of labor, computation has become cheaper by a factor of 5 × 10-12, or by a factor of approximately 5 trillion. A century ago, the cost for 20 standardized additions at 1998 wages using manual calculation was around $1. That had fallen to $10 -13 for computers available in early 2001. Figure 4 shows the results in terms of pure performance, that is the equivalent speed of different machines. Before World War II, computation speeds were in the order of between 0.01 and 1 instruction per second (i.e., between 10-6 and 10-8 of a MIPS-E). Manual calculations were clocked to have a speed of 0.08 × 10-6 MIPS-E. (For reference purposes, if with 99.9 percent accuracy you can add two five-digit number in 10 seconds and multiply two five-digit numbers in two minutes, you have the computational capability of the “manual” computer in our calculations.) The increase in computational power relative to manual calculations or the mechanical calculators of around 1900 has been phenomenal. The increase in power has been 180,000,000,000 relative to manual calculations and 21,000,000,000 relative to the average mechanical calculator of the 1900 era. Trends for different periods We next examine the progress of computing for different subperiods. On the whole, the picture is clear that progress was slim before 1940 and rapid afterwards. Given the heterogeneous nature of the different machines examined here, however, it is difficult to create a constant-quality price index that accurately tracks performance and price over short periods of time. We have therefore taken two slightly different approaches to examining subperiod performance – examining representative computers and regression analysis. Tables 1 and 2 show the data on representative computers for nine different periods (including manual calculations as the first “period”). Looking at Table 2, this approach shows modest growth in performance (modest by computer standards but virtually unheard-of by conventional standards) from manual computation to 1940. Increase in productivity shown in the last two columns in 19 The advantages of using wage as a deflator are twofold. First, it provides a measure of the relative price of two important inputs (that is, the relative costs of labor and computation). Additionally, the convention of using a price index as a deflator is defective because the numerator is also partially contained in the denominator. -16- Table 2 was probably close to the average for the economy as a whole during this period. Then, beginning in 1940, the explosion in computer power, performance, and productivity growth began. Over the last six decades, the most impressive declines in computation costs were in the 1940s and over the last two decades. Major gains came in the period from 1940 to 1950 as the first serious computers were built (the Harvard Mark I and II, the ENIAC, the EDSAC, and finally the UNIVAC). Over the last two decades, performance was extremely rapid with the introduction of high-level languages and the development and continuous improvement of microprocessors. A more robust estimate of the decadal improvements is constructed using a log-linear spline analysis. Table 3 shows a regression of the logarithm of the constant-dollar price of computation with decadal trend variables, while Table 4 and Figure 5 show the implied declines in prices in both constant and current prices. Figure 6 shows the actual and predicted values from the regression analysis. Most histories of the computer suggest that there was a major break in the trend around World War II with the development of computer software programs and the use of relays and vacuum tubes. A close look at the data indicates that there was indeed a very distinct break in the trend in the 1940-50 period. Using the specification in Table 4, we see that the rate of decline in computation cost was essentially zero before 1940, 50 percent per year for 1940- 50, 41 percent for 1950-60, 17 percent for 1960-70, 23 percent for 1970-80, 59 percent for 1980-90, and 58 percent for 1990-2001. These estimates show the magnitude of the acceleration in the performance data. The regression confirms the two peaks in price decline, one in the 1940s and a second one in the 1980-2001 period. (Note that the estimates in Tables 1 and 2 are slightly different because they use representative computers clustered around the benchmark years, while those in Table 3 and 4 and Figure 5 use the entire sample.) One important question is whether there has been an acceleration in the pace of improvement or in the fall in prices in the last few years. The pictures and regression analysis shown and summarized in Tables 3 and 4 suggest a definite acceleration after 1980, from an average of around 42 percent per year from 1940 to 1980 to an improvement of 58 percent per year from 1980 to 2001. There is no obvious increase above that already blistering rate of improvement apparent from the most recent data, although it must be remembered that at the most recent rate of improvement computational power is increasing by a factor of 100 each decade. -17- Another interesting feature is the capital cost of the computer devices, shown in Figure 7. Capital costs per device shot up sharply in the 1940s as the first behemoth computers were built. However, particularly since the personal computers were introduced, the capital cost of the devices has declined sharply. Similarly, Figure 8 shows the progress in cycle speed over the last six decades, indicating that the progress has been quite steady. One of the concerns with the approach taken in this study is that our measures might be poor indexes of performance. We have compared MIPS-E with two other measures -- addition time in Figure 9 and clock speed in Figure 10. Both simple proxies show a very high correlation with our synthetic measure of MIPS-E over the entire period. A final interesting point is that the variance of prices across different devices has declined markedly over the last century. Performance differed greatly among devices a century ago, while there is little difference in the performance per unit cost among the different devices in the last decade. A useful summary of the overall improvement in computing relative to manual calculations is shown in the following table: Change from Manual to 2001 Improvement (ratio) Cost of device (1998 prices) 20 0.07 Computer speed (MIPS-E) 180,000,000,000. Price per calculation (MIPS-E) 1,300,000,000,000. Instructions per hour of labor 5,100,000,000,000. In short, relative to hand calculations like those performed by the young J.D. Rockefeller, the cost of the devices declined sharply. The number of calculations per second increased by a factor of 180 billion. Compared to a skilled clerk of around the turn of the century, the cost of calculations has fallen by a factor of 1,300,000,000,000 relative to other consumer prices and by a factor of 5,100,000,000,000 relative to the cost of labor. 20 For the device cost, we use mechanical calculators rather than paper and pencil. -18- V. Comparison with Hedonic Indexes of Computer Prices How do the performance-based indexes used here compare with conventional price indexes for computers? This question is particularly interesting because computers are one of the few products for which the U.S. government constructs constant-quality price indexes. To compare the prices developed here with the official price of computers, we use the price of computations shown in Appendix Table 2. The summary table of different price indexes for recent periods is provided in Table 5. For the official price we use the deflator for computers (more precisely, computers and peripheral equipment) prepared by the Bureau of Economic Analysis (BEA) for the National Income and Product Accounts (NIPA).21 The BEA data are generally derived from price estimates prepared by the Bureau of Labor Statistics (BLS).22 Figure 11 shows a comparison of our performance-based price with the NIPA price (both in nominal prices) over the period 1970 to 2001.23 They are indexed to equal 1 in 1970. The two series diverge significantly. Over the 1970- 2001 period, our performance-based price declined by 49 percent per year while the NIPA price declined by 12 percent per year. Thus the performance-based price has fallen approximately four times as rapidly as the official price. (All figures are geometric averages.) For the shorter period from 1987 to 1998, we have detailed price indexes 21 The data are available at http://www.bea.doc.gov/. 22 A descriptions of current BLS procedures is contained in Michael Holdway, “Quality-Adjusting Computer Prices in the Producer Price Index: An Overview,” available at http://stats.bls.gov/ppicomqa.htm , undated but apparently from 1999. Earlier procedures are described in James Sinclair and Brian Catron, “An experimental price index for the computer industry,” Monthly Labor Review, October 1990, pp. 16-24. A recent paper describes the use of performance tests in computer prices, see Michael Holdway, “An Alternative Methodology: Valuing Quality Change for Microprocessors in the PPI,” available at http://www.bea.doc.gov/bea/about/advisory.htm . 23 For this estimate, we assumed that the NIPA price decline for 2001 will be 15 percent. For the first quarter of 2001, the price index of the final sales of computers declined by 34 percent at an annual rate. -19- from several sources. For this period, the fall in the nominal price of electronic computers (SIC 3571) according to the BEA fell by 15 percent per year. By contrast, according to our estimates the nominal cost per instruction fell by 62 percent per year.24 The BLS producer price index (PPI) looks not dissimilar. The PPI for Electronic computers and computer equipment fell by 13 percent over the period from December 1990 to December 2000. Clearly, the official indexes look substantially different from the performance-based measures developed here. How might we reconcile the significant discrepancy between the performance-based series and the official price index? To begin with, note that these two series shown in Figure 11 are not exactly comparable because the computer price is the deflator of computers and peripheral equipment whereas the performance-based measure is for computers only. In addition to computers, the NIPA series contains items like storage devices, terminals, and printers, whose prices have declined less rapidly than computers. Over the period 1987-98, the price index for the broader category fell about 3 percent per year more slowly that the index for electronic computers. The estimated PPI for computers just discussed also shows a relatively small decline over the last decade. So while some of the difference in prices is composition, there still remains a major gap. Second, recent research raises questions about whether the BEA price index for computers is representative of hedonic pricing for computers as a whole. A survey by Berndt and Rappaport indicates that the mean decline of alternative indexes for personal computers has declined by 36 percent per year over their sample period, which is significantly faster than the BEA index.25 Finally, and most important, is that the government price indexes for computers are hedonic indexes of the price of the components of computers, or inputs into computation, while the measures presented here are indexes of the performance of computers. The hedonic measures will only be accurate to the 24 Data on prices by four digit industry are from the BEA web site cited in the last footnote but one. (From worksheet hedonic industries 111900.xls.) The number of 62 percent is calculated from a spline regression but is consistent with other calculations for the period. 25 Ernst Berndt and Neal Rappaport, “Price and Quality of Desktop and Mobile Personal Computers: A Quarter Century of History,” NBER manuscript, Cambridge, Mass., July 31, 2000. -20- extent that the prices of components accurately reflect the marginal contribution of different components to users’ valuation of computer power. It is worth noting that current government hedonic indexes of computers contain no performance measure.26 A recent study by Paul Chwelos has investigated the use of performance- based measures in estimating prices of desktop and laptop computers. Based on his results, he concludes, “Using the results from the interactions approaches, it appears that in the 1990s, laptop PCs have declined in quality-adjusted terms at about 39% per year, while desktop PCs have declined at approximately 35% per year.” 27 His results show somewhat less dramatic declines that the findings in this study: Over the same period (1990-98), our estimates are that the price of computations has declined 62 percent per year. (It is worth reiterating that for the later part of the period, in the 1990s, our performance-based price is based on sophisticated benchmark performance measures, such as the Dhrystone MIPS or SPEC2000 indexes described above.28) The results from both the present study and the Chwelos study reinforce the questions raised about the accuracy of the input-based hedonic approach. Using an accurate benchmark or series of benchmarks would be logically superior approach to estimating true prices. There appears to be a major discrepancy between the results of performance-based estimates of computer prices and those used in government statistics. The large discrepancy between the official hedonic prices and the performance-based measures is quite disturbing because it raises the possibility that the hedonic measures may be far wide of the mark as a measure of the performance of computers today. 26 The variables in the current BLS hedonic regression for personal desktop computers (as of June 1999) contains one performance proxy (clock speed), two performance-related proxies (RAM and size of hard drive), an array of feature dummy variables (presence of Celeron CPU, ZIP drive, DVD, fax modem, speakers, and software), three company dummy variables, and a few other items. It contains no performance measures. 27 Chwelos, op. cit., p. 79. 28 There does not appear to be any work investigating the relationship of the hedonic prices to performance. An interesting study would be to take the hedonic values from the BLS and other methods and to compare those to the estimated value using different benchmark evaluations. -21- VI. Conclusions The progress of computing The purpose of this study is twofold. The key purpose is to extend estimates of the price of computers and computation back in time to the earliest computers and calculators as well as to manual calculations. Along the way, we have emphasized the desirability of focusing on performance-based measures of price and output rather than input- or component-based measures. Before reviewing the major conclusions, we must note some of the major reservations about the results. While we have provided performance-based measures of different devices, we note that the measures are generally extremely limited in their purview. They capture primarily computational capacity and generally omit other important aspects of modern computers such as connectivity, reliability, size and portability, as well as compatibility across different hardware and operating systems. In one sense, we are comparing the computing skills of mice and men without taking into account many of the other “higher” functions that modern computers perform relative to early behemoths like the IBM 1620 or 19th century wonders like the Hollerith tabulator. In addition, we emphasize that some of the data used in the analysis, particularly those for the pre-World-War II period, are extremely crude. Additionally, the underlying measures of performance or computer power (computations per second or million instructions per second) have been superceded by more sophisticated benchmarks; while conventional equivalence scales exist and are used when possible in this study, the calibrations are not above reproach. Subject to these reservations, the following conclusions seem warranted. First, there has been a phenomenal increase in computer power over the twentieth century. Performance in constant dollars has improved since 1900 by a factor in the order of 1012 (that is, 1 trillion) which represent compound growth rates of 32 percent per year for a century. In fact, most of the increase has taken place since 1940, during which the average rate of improvement has been at an annual average rate of 55 percent. These increases in productivity are far larger than anything else in the historical record. Moreover, the increase began long before dot.coms appeared, and well before the “new economy” became fashionable. -22- Second, the data show convincingly a sharp break in trend around 1940 – at the era where the technological transition occurred from mechanical calculators to what is recognizably the ancestor of modern computers. There was only modest progress – perhaps a factor of 10 – in general computational capabilities from the skilled clerk to the mechanical calculators of the 1920s and 1930s. Around the beginning of World War II, all the major components of the first part of the computer revolution were developed, including the concept of stored programs, the use of relays, vacuum tubes, and eventually the transistor, along with a host of other components. Dating from about 1940, computational speed increased and costs decreased steadily over the course of the 20th century. The pace of improvement shows no sign of slackening, and indeed the pace of price and performance improvement has been higher over the last two decades than in the prior four decades. This increase in productivity has recently been independently identified in the movement from a three-year to a two-year product cycle for microprocessor devices. Third, these estimates of the growth in computer power, or the decline in calculation costs, are higher than standard hedonic price measures for computers that are used in the official government statistics. The reasons for the divergence are not clear, but one possible source is that the measures used here are indexes of performance, while hedonic approaches used by governments today are based on the prices of components or inputs. To the extent that the price structure of components does not reflect the marginal contribution of different components to computer performance, the hedonic price estimates may provide misleading estimates of the “true” price of computers. When Things Begin to Think These results raise a further set of questions to which the answers are much more speculative but also much more important. When if ever will the astounding increase in the productivity growth, and in the growth of productivity growth, of computers end? When if ever will the rate of decline in the decline rate of the cost of computerized instructions saturate? If the astounding rate of productivity growth continues, when will computers evolve into machines with essentially human levels of intelligence? These are crucial questions for economics and for human civilizations. To take the last question, computer scientists estimate that human computational and storage capabilities are approximately one million times larger than today’s -23- top personal computers.29 That is, we humans are “petaflop” machines, or machines with computational capacities equal to one quadrillion (1015) floating point operations per second, or approximately one billion MIPS-E.30 At the present rate of improvement in computational ability of about 80 percent per year, supercomputers will attain the storage and computational capacities of humans within 6 years. Indeed, the first “petaflop machine” is being constructed by IBM with a target date of 2003.31 While many computer scientists emphasize the importance of huge mega- mega-megamachines (important for things like climate prediction or simulating turbulence), the real importance for human societies is probably the availability of machines that are fast, cheap, small, and powerful. A major revolution will come when “micropetacomputers” because available. These are machines with memory, storage, and computing capacities that are roughly a million times greater than today’s personal computers costing $1 or less, weighing less than an ounce, and being small enough to fit into your shoe or under your fingernail. A micropetacomputer with human computing capabilities will be on the scene around 2025 if computing capabilities continue to grow at the current rate of 60 percent per year. At current trends, the cost of such a machine will be around $2000 by 2025 and $1 by 2040. What will life and the economy be like with humanlike computers costing $1 or less embedded in microprocessors, robots, shoes, humanoid research assistants, and humans? There are likely to be billion and billions of such devices (the U.S. produced about 5 billion non-computer microprocessors produced last year). These devices will be wandering around, cooking, working, thinking, scheming, bargaining, learning, talking back, negotiating, as well as designing and 29 See the references by Moravec and Kurzweil in footnotes 13 and 14 for a discussion of the trends and of the capacities of humans. 30 A floating point operation per second, or “flop,” is yet another measure of computer performance, also usually calibrated to a particular benchmark. Most benchmarks find that 1 million flops correspond to between 2 and 3 MIPS-E. 31 IBM is developing a supercomputer called “Blue Gene” with 256 towers, each with 4 boards, each with 36 processors, each with 32 cores, each with 1 gigaflop of processing power. This machine will have a petaflop of computational capacity, approximately 1 million times the capability of current personal computers, and the estimated cost is $100 million. -24- producing other computers, devices, and robots? Cheap intelligent devices are likely to be able to monitor our health, manage our portfolios, drive our cars, bargain with other computers, populate space, comfort us when we are low, search for aliens, and eventually propagate themselves and write software for yet other intelligent devices. While computer scientists and science fiction writers have begun to speculate on the nature of life and work in such a world, these speculations have yet to penetrate mainstream commentary and economic analysis. Will these be a fourth factor of production in our textbooks? What will be the ethics of creating or destroying apparently conscious computer-entities? Who will be managing whom? If nonhuman capital with human capabilities costing virtually nothing is indeed a serious possibility in the next half century, then the organization of economic and social activity in such a world should be high on the research agenda today. -25- Bytes of rapid Capital cost access (1998 Labor cost of Cycle Speed memory dollars, Total cost per million computation (hours Technology Period MIPS-E (Khz) (millions) 000s) calculations (1998 $) per inst) Manual 19th century 1.68E-08 na 1.50E-05 1.81E-03 5.68E+04 1.65E-02 Early Mechanical 1900 1.48E-07 na 4.39E-05 2.47E+01 2.77E+04 1.05E-02 Late Mechanical 1940 1.92E-06 1.02E-02 5.11E-05 3.98E+02 2.09E+04 2.82E-03 Relay/Vacuum 1950 3.80E-03 1.36E+00 3.16E-04 2.68E+03 5.78E+01 6.43E-06 Electronic 1960 1.06E-01 2.00E+03 5.20E-02 3.72E+03 2.61E+00 2.22E-07 Electronic 1970 4.65E-01 3.51E+02 1.32E+00 6.75E+02 4.06E-01 2.98E-08 Early Microprocessor 1980 4.65E-01 5.48E+03 3.11E-01 1.86E+01 5.03E-03 3.76E-10 Microprocessor 1990 1.25E+01 2.50E+04 3.70E+00 5.69E+00 3.65E-05 2.92E-12 Microprocessor 2001 3.10E+03 1.34E+06 1.28E+02 1.73E+00 4.30E-08 3.22E-15 Table 1. Basic Performance Characteristics by Epochs of Computing Source: Each year takes the average of representative computer systems around that date. The data for individual computers are given in Appendix Table 2. Estimates use geometric means of different technologies. -26- Bytes of Capital cost Total cost per rapid access (1998 million Labor cost of Technological Cycle Speed memory dollars, calculations computation Period transition MIPS-E (Khz) (millions) 000s) (1998 $) (hours per calc) Manual to 1900 Manual to mechanical 5.2% na 2.6% 25.1% -1.7% -1.1% 1900 -1940 Improved mechanical 5.4% na 0.3% 5.9% -0.6% -2.7% Introduction of vacuum 1940 - 1950 tubes, relays, software 141.1% 76.4% 23.5% 24.7% -49.5% -50.6% 1950 - 1960 Introduce transistor 34.1% 90.5% 57.0% 2.9% -23.9% -25.7% 1960 - 1970 Mainframes 18.2% -17.9% 44.2% -17.5% -19.0% -20.3% 1970 - 1980 First PCs 0.0% 29.4% -12.7% -28.6% -33.8% -33.6% 1980 - 1990 Diffusion of PCs 42.4% 17.7% 30.4% -11.9% -41.1% -40.6% 1990- 2001 Modern era 64.2% 43.1% 37.6% -10.2% -45.5% -45.8% Table 2. Growth Rates of Different Performance Characteristics of Performance In Different Epochs of Computing (average annual geometric growth rates) Source: See note to Table 1. -27- Dependent Variable: LP98 Method: Least Squares Sample size: 107 Variable Coefficient Std. Error t-Statistic Prob. C -5.176810 25.86307 -0.200162 0.8418 YEAR 0.008334 0.013513 0.616718 0.5388 DUM40 -0.572090 0.094193 -6.073600 0.0000 DUM50 0.139307 0.157217 0.886084 0.3777 DUM60 0.233455 0.160857 1.451324 0.1499 DUM70 -0.120904 0.181313 -0.666824 0.5064 DUM80 -0.321444 0.191720 -1.676634 0.0968 DUM90 0.026524 0.170563 0.155506 0.8767 R-squared 0.964021 Mean dependent var -0.726553 Adjusted R-squared 0.961477 S.D. dependent var 8.656147 S.E. of regression 1.698965 where LP98 is the price per MIPS-E divided by the consumer price index YEAR is calendar year DUM[t] takes a value of 0 until year t and YEAR-t thereafter, Table 3. Regression Analysis for Trends in Computing Power Regression shows the trend in the logarithm of the deflated price of computer power as a function of year and time dummies. -28- Change in cost of computation [Average annual rate of change] 1998 prices Current prices 1850 - 1940 0.8 1.4 1940-50 -56.3 -50.1 1950-60 -42.4 -41.2 1960-70 -19.1 -17.0 1970-80 -31.2 -22.8 1980-90 -63.3 -58.6 1990-2001 -60.7 -58.1 Table 4. Change in Price of Computation Over Different Epochs Source: Estimates are predictions from the regression in Table 3 and a similar one for current dollar costs of each variable on year and decadal dummy variables for each decade beginning in 1940. -29- Rate of Study Period Method improvement Source Government price data Price index for computers and peripherals (NIPA) 1990-2000 Hedonic -18 [b] PPI: Electronic computers and computer equipment 1990-2000 Hedonic -13 [c] PPI: Semiconductors and related devices 1990-2000 Hedonic -34 [c] Academic studies Berndt and Rappaport, personal computers 1989-1999 Hedonic -36 [a] Chwelos, desktop computers 1990-1998 Performance -35 [d] This study 1990-2001 Performance -49 [e] [a] Landefeld and Grimm., op. cit. [b] BEA web page. [c] BLS web page. [d] Chwelos, op. cit. [e] Appendix and Table 2. Table 5. Comparison of Price Indexes for Different Studies This table shows estimates of the decline in prices of computers from different studies and methodologies. -30- 1850 1870 1890 1910 1930 1950 1970 1990 2010 1.E+10 1.E+08 1.E+06 Cost per MIPS-E (1998$) 1.E+04 1.E+02 1.E+00 1.E-02 1.E-04 1.E-06 1.E-08 Figure 1. The progress of computing measured in cost per million instructions equivalent (MIPS-E) deflated by the consumer price index Source: See Appendix Table 2. -31- 1850 1870 1890 1910 1930 1950 1970 1990 2010 1.E+10 1.E+08 1.E+06 Cost per MIPS-E (1998$) 1.E+04 1.E+02 1.E+00 1.E-02 Manual Mechanical 1.E-04 Vacuum Transistor Microprocessor 1.E-06 1.E-08 Figure 2. The cost of computer power for different technologies Source: See Appendix Table 2. -32- 1850 1900 1950 2000 1.E+00 1.E-01 1.E-02 1.E-03 1.E-04 Hours of work per computation 1.E-05 1.E-06 1.E-07 1.E-08 1.E-09 1.E-10 1.E-11 1.E-12 1.E-13 1.E-14 1.E-15 Figure 3. The progress of computing measured in cost per instruction measured in terms of labor cost The measure shown here is the cost of calculations measured in terms of labor hours. It is the price per instruction-equivalent divided by the hourly wage rate. Source: See Appendix Table 2. -33- 1850 1900 1950 2000 1.E+04 1.E+03 1.E+02 1.E+01 Computing power (MIPS-E) 1.E+00 1.E-01 1.E-02 1.E-03 1.E-04 1.E-05 1.E-06 1.E-07 1.E-08 Figure 4. The progress of computing power measured in millions of instructions per second equivalent (MIPS-E) The measure shown here is the raw computing speed. For a discussion of the meaning of MIPS-E, see text. Source: See Appendix Table 2. -34- 70 60 Rate of decline of computation prices (1998 $) 50 40 30 20 10 0 1900 - 1940 - 1950 - 1960 - 1970 - 1980 - 1990- 1940 1950 1960 1970 1980 1990 2001 -10 Figure 5. Decline rates in cost of computation by epoch Costs are deflated by the consumer price index. Figure is the compound rate of decline of the cost of computation with sign changed from regression analysis in Table 4. -35- 15 10 5 0 -5 -10 -15 Actual Predicted -20 1850 1900 1950 2000 YEAR1 Figure 6. Predicted and Actual Deflated Price of Computer Power Prediction is based on equation in year and decadal dummies. Solid line is prediction while circles are actual. -36- 30% 20% Rate of increase in capital costs per computation (current $) 10% 0% 1900 - 1940 - 1950 - 1960 - 1970 - 1980 - 1990- 1940 1950 1960 1970 1980 1990 2001 -10% -20% -30% -40% Figure 7. Capital costs increases per unit of computation for epochs These costs are deflated by the consumer price index. -37- 100% 80% Rate of increase in cycle speed (Hz) per year) 60% 40% 20% 0% 1940 - 1950 - 1960 - 1970 - 1980 - 1990- 1950 1960 1970 1980 1990 2001 -20% -40% Figure 8. Decadal increases in processor cycle speeds -38- 10 5 0 LOG(MIPS-E) -5 -10 -15 -20 -10 -5 0 5 10 15 20 LOG(Add time) Figure 9. Relationship between Addition Time and MIPS-E The graph shows the relationship between addition time (additions per second) and millions of instructions per second or an associated benchmark. (Source is Appendix Table 2.) -39- 10 5 0 LOG(MIPS-E) -5 -10 -15 -20 -5 0 5 10 15 20 25 LOG(Cycle speed) Figure 10. Relationship between Cycle Speed and Instruction Speed The graph shows the close association between cycle speed (in hertz) and millions of instructions per second or an associated benchmark. (Source is Appendix Table 2.) -40- 1965 1970 1975 1980 1985 1990 1995 2000 2005 1.E+01 Price of computation 1.E+00 NIPA computer price 1.E-01 Index of computer prices (1970 = 1) 1.E-02 1.E-03 1.E-04 1.E-05 1.E-06 1.E-07 Figure 11. Comparison of Official Price of Computers and MIPS-E Measure The upper line shows the official (BEA) price index for computers and peripherals. The lower line shows an index of the price per MIPS-E. Both are in current prices and are indexed to equal 1 in 1970. -41- Appendix Table 1. Equivalences between different benchmarks and MIPS-E The following is the equivalence between MIPS-E and other benchmarks are as follows: Benchmark MIPS equivalent Source 1 Specmark = 1 MIPS-E [a] 1 Spec92 = 1 MIPS-E [a] 1 Spec95 = 40 MIPS-E [a] 1 Winscore2.0 = 3.4 MIPS-E [a] 1 BYTEmark = 100 MIPS-E [a] 1 MacBench = .66 MIPS-E [a] 1 Spec2000 = 4 MIPS-E [b] 1758 Dhrystone = 1 MIPS-E [c] 20,000,000 Moravec computer-power units = 1 MIPS-E [d] Sources: [a] www.frc.ri.cmu.edu/~hpm/book97/ch3/processor.list [b] http://www.heise.de/ct/00/02/024/ using the geometric average of the ratio for spec2000 to spec-95 and combining with the benchmark for Spec95. [c] hpwww.epfl.ch/bench/bench.FAQ.html [d] Author’s calculations. Information units are according to the formula for computer power in text. -42- Appendix Table 2. Underlying data on progress of computing. Megabytes Total cost per Multiplicati of rapid Cycle Capital cost million Labor cost of Additions ons per access Speed Computing (current calculations computation Date Device per second second memory (Khz) Power (MIPS-E) dollars, 000s) (1998 $) (hours per inst) 1880 Manual calculations 7.00E-02 3.18E-03 1.50E-05 na 1.68E-08 1.81E-03 56832.5684 1.65E-02 L 1857 Scheutz Difference Engine 2.00E-01 2.00E-02 3.45E-05 na 1.34E-07 8.72E+01 39923.7481 2.29E-02 M 1874 Original Odhner 7.00E-02 3.18E-03 1.84E-05 na 1.87E-08 2.62E+00 39722.8359 1.84E-02 M 1890 Hollerith Tabulator 5.30E-01 5.30E-03 2.88E-04 na 3.13E-07 3.62E+02 79397.7892 2.31E-02 M 1895 Steiger Millionaire 5.00E-01 5.00E-02 2.30E-05 na 2.59E-07 6.68E+00 3985.0475 1.67E-03 M 1902 Automatic Tabulator 2.50E+00 2.50E-02 2.88E-04 naa 1.48E-06 5.64E+02 23482.8678 9.61E-03 M 1905 Burroughs Model 9 3.00E-01 1.00E-02 2.07E-05 na 6.72E-08 4.20E+00 16175.0471 5.26E-03 M 1907 Adding Tabulator 2.50E+00 5.00E-02 2.30E-05 na 3.87E-07 1.74E+02 27204.7800 9.17E-03 M 1911 Monroe Calculator 3.33E-02 1.00E-02 2.40E-05 na 2.91E-08 6.11E-01 67695.7920 1.94E-02 M 1919 IBM Tabulator 2.00E-01 5.00E-03 4.00E-05 na 5.33E-08 1.89E+02 239752.4100 5.79E-02 M 1935 IBM 601 na na na na 1.00E-06 6.54E+02 50853.6191 7.78E-03 M 1938 Zuse-1 1.00E-01 1.00E-02 3.05E-05 na 4.45E-08 1.16E+02 479116.0387 7.14E-02 M 1939 Zuse-2 1.00E+00 1.00E-01 3.05E-05 na 4.45E-07 1.17E+02 49150.2797 7.11E-03 V 1939 BTL Model 1 3.33E+00 3.33E+00 3.81E-06 na 1.99E-06 5.87E+02 24137.6797 3.49E-03 V 1940 Bell Calculator Model 1 na na na na 3.33E-06 2.33E+02 8670.3135 1.21E-03 V 1941 Zuse-3 1.70E+00 3.00E-01 2.44E-04 5.30E-03 1.34E-06 3.13E+02 25542.6743 3.38E-03 V 1942 Harvard Mark I 3.30E+00 1.70E-01 2.75E-04 3.30E-03 2.03E-06 2.00E+03 59651.2659 8.51E-03 V 1942 Atanasoff Berry Computer 3.00E+01 5.00E-01 2.29E-04 6.00E-02 6.96E-06 7.01E+01 1399.3684 2.00E-04 V 1943 BTL Model 2 3.33E+00 2.00E-01 1.19E-05 na 1.10E-06 4.72E+02 40815.6627 4.82E-03 V 1943 BTL Model 3 3.33E+00 1.00E+00 4.29E-05 na 3.02E-06 1.89E+03 40899.0109 4.83E-03 V 1943 Colossus 5.00E+03 5.00E+01 2.38E-06 na 2.29E-04 9.43E+02 310.9659 3.67E-05 V 1944 ASCC Mark 1 3.33E+00 1.67E-01 6.01E-04 na 2.48E-06 2.78E+03 160295.8780 1.83E-02 V 1945 Zuse-4 2.00E+00 5.00E-01 2.44E-04 na 2.18E-06 4.53E+02 21165.0771 2.45E-03 V 1946 BTL Model 5 3.33E+00 1.00E+00 1.47E-04 na 3.51E-06 4.18E+03 71441.5646 8.47E-03 V 1946 ENIAC 5.00E+03 3.33E+02 9.54E-05 1.00E-01 2.96E-03 5.64E+03 184.8347 2.19E-05 V 1947 Harvard Mark 2 5.00E+00 1.43E+00 4.88E-04 na 6.65E-06 2.19E+03 35573.9215 4.30E-03 V 1948 IBM SSEC 3.33E+03 5.00E+01 4.58E-05 na 6.43E-04 3.39E+03 474.6120 5.65E-05 V 1949 BINAC na na na na 5.25E-03 1.90E+03 24.8057 2.82E-06 V 1949 EDSAC 3.33E+03 3.33E+02 2.14E-03 5.00E-01 2.71E-03 6.85E+02 23.0498 2.62E-06 V 1950 SEAC 5.00E+03 5.00E+02 5.49E-03 na 4.81E-03 5.42E+03 67.8124 7.47E-06 V 1951 Zuse-5 I 1.00E+01 2.00E+00 2.44E-04 na 9.98E-06 5.84E+03 35076.9641 3.82E-03 V 1951 Univac I na na na na 4.58E-03 5.84E+03 76.3854 8.32E-06 V 1952 IBM CPC 1.25E+03 1.00E+02 1.54E-04 5.00E+01 2.19E-03 6.14E+02 27.5938 2.92E-06 V 1953 Univac 1103 0.00E+00 0.00E+00 0.00E+00 na 3.33E-02 5.45E+03 17.3722 1.75E-06 V -43- Megabytes Total cost per Multiplicati of rapid Cycle Capital cost million Labor cost of Additions ons per access Speed Computing (current calculations computation Date Device per second second memory (Khz) Power (MIPS-E) dollars, 000s) (1998 $) (hours per inst) 1953 IBM 650 1.43E+03 1.00E+02 4.88E-03 1.25E+02 1.03E-03 1.22E+03 92.7589 9.35E-06 V 1953 IBM 701 na na na na 2.22E-02 1.40E+03 4.7400 4.78E-07 V 1954 EDVAC 1.11E+03 3.33E+02 5.37E-03 na 1.74E-03 3.04E+03 113.2226 1.12E-05 V 1955 Whirlwind 5.00E+04 3.33E+04 3.91E-03 1.00E+03 6.10E-02 1.22E+03 1.5888 1.51E-07 V 1955 Librascope LGP-30 3.33E+03 5.00E+01 1.46E-02 na 6.30E-04 1.83E+02 62.5877 5.93E-06 V 1955 IBM 704 1.00E+05 5.00E+03 3.52E-02 na 5.79E-02 1.22E+04 12.1635 1.15E-06 V 1958 Datamatic 1000 na na na na 4.00E-03 1.23E+04 178.6493 1.61E-05 V 1958 Univac II na na na na 5.00E-03 5.48E+03 67.0466 6.03E-06 V 1959 Mobidic na na na na 6.25E-02 7.50E+03 7.1672 6.34E-07 V 1959 IBM 7090 2.50E+05 5.00E+04 1.41E-01 2.00E+03 3.43E-01 1.68E+04 2.8142 2.49E-07 E 1960 IBM 1620 1.67E+03 2.00E+02 1.22E-02 na 9.60E-04 1.10E+03 97.1750 8.43E-06 E 1960 DEC PDP-1 1.00E+05 5.00E+04 1.76E-02 na 1.29E-01 7.44E+02 0.5671 4.92E-08 E 1961 Atlas 1.00E+06 2.00E+05 2.34E-02 na 1.48E+00 2.73E+04 1.0430 8.94E-08 E 1961 DEC PDP-4 na na na na 1.00E-01 3.55E+02 0.5212 4.47E-08 E 1962 Univac III na na na na 1.11E-01 3.77E+03 2.1884 1.83E-07 E 1962 Burroughs 5000 1.00E+05 2.50E+04 2.54E-02 na 9.87E-02 5.39E+03 3.3728 2.82E-07 E 1963 IBM 7040 na na na na 6.30E-02 2.98E+03 3.1647 2.61E-07 E 1963 Honeywell 1800 na na na na 1.50E-01 7.45E+03 2.9857 2.46E-07 E 1964 CDC 6600 3.33E+06 2.00E+06 4.00E+00 na 9.22E+00 2.89E+04 0.1779 1.43E-08 E 1964 DEC PDP-6 1.00E+05 5.00E+04 7.03E-02 na 1.78E-01 1.58E+03 0.6847 5.52E-08 E 1965 IBM 1130 1.25E+05 2.50E+04 1.56E-02 na 1.16E-01 2.59E+02 0.4273 3.36E-08 E 1965 DEC PDP-8 na na na na 1.67E-01 9.31E+01 0.2427 1.91E-08 E 1966 IBM 360/75 1.25E+06 5.00E+05 8.00E+00 na 2.36E+00 2.51E+04 0.6051 4.71E-08 E 1967 DEC PDP-10 na na na na 1.24E+00 8.55E+03 0.4125 3.15E-08 E 1969 CDC 7600 1.00E+07 5.00E+06 8.00E+00 na 2.71E+01 4.45E+04 0.0926 6.85E-09 E 1969 DG Nove na na na na 1.17E-01 3.38E+01 0.3370 2.49E-08 E 1970 GE-635 5.00E+05 1.00E+05 5.00E-01 na 6.82E-01 8.40E+03 0.7392 5.45E-08 E 1971 SDS 920 5.00E+04 3.33E+04 2.50E-01 na 9.40E-02 4.03E+02 0.6492 4.67E-08 E 1972 IBM 360/195 1.00E+07 5.00E+06 5.00E-01 1.08E+02 1.82E+01 3.12E+04 0.0975 6.76E-09 E 1972 Honeywell 700 na na na 2.00E+02 7.50E-02 4.68E+01 0.5693 3.94E-08 E 1973 Intellec-8 6.41E+03 na na na 6.41E-03 8.80E+00 6.3451 4.39E-07 E 1973 Data General Nova 5.00E+04 na na 2.00E+03 2.50E-02 1.47E+01 1.6399 1.13E-07 E 1975 Altair 8800 6.41E+04 na na na 6.41E-02 6.06E+00 0.6001 4.37E-08 E 1976 DEC PDP-11/70 3.33E+05 1.11E+05 1.25E-01 na 4.12E-01 4.30E+02 0.1517 1.09E-08 E 1976 Cray-1 5.00E+07 5.00E+07 3.20E+01 na 1.57E+02 2.86E+04 0.0126 9.03E-10 E 1977 Apple II 1.00E+05 2.50E+04 3.90E-03 na 7.97E-02 3.50E+00 0.0029 2.07E-10 E 1978 DEC VAX 11/780 5.00E+05 3.33E+05 8.00E+00 na 1.00E+00 5.00E+02 0.0594 4.17E-09 MP 1980 Sun-1 3.33E+05 1.00E+05 1.00E+00 na 5.41E-01 5.94E+01 0.0603 4.57E-09 MP 1982 IBM PC 2.50E+05 5.00E+04 4.69E-02 5.00E+03 2.46E-01 4.65E+00 0.0012 9.22E-11 MP 1982 Sun-2 5.00E+05 1.67E+05 2.00E+00 na 8.59E-01 3.38E+01 0.0190 1.46E-09 MP 1982 Compaq Portable 5.00E+05 na na na 6.41E-01 5.07E+00 0.0005 3.82E-11 MP 1983 IBM AT-80286 na na 6.00E+03 8.00E-01 9.29E+00 0.0007 5.26E-11 MP -44- Megabytes Total cost per Multiplicati of rapid Cycle Capital cost million Labor cost of Additions ons per access Speed Computing (current calculations computation Date Device per second second memory (Khz) Power (MIPS-E) dollars, 000s) (1998 $) (hours per inst) 1984 Macintosh-128K 3.33E+05 5.00E+04 1.25E-01 na 3.80E-01 3.92E+00 0.0007 5.13E-11 MP 1985 Cray-2 2.50E+08 2.50E+08 1.95E+03 na 8.61E+02 1.52E+04 0.0014 1.08E-10 MP 1986 Compaq Deskpro 386 na na na 1.60E+04 4.00E+00 7.43E+00 0.0001 8.62E-12 MP 1986 Sun-3 1.11E+06 5.00E+05 4.00E+00 na 2.12E+00 1.49E+01 0.0072 5.55E-10 MP 1986 DEC VAX 8650 5.00E+06 1.67E+06 1.60E+01 na 9.19E+00 1.86E+02 0.0043 3.28E-10 MP 1987 Apple Mac II na na na na 1.00E+00 4.30E+00 0.0003 2.13E-11 MP 1987 Mac II 1.00E+06 5.00E+05 2.00E+00 na 1.91E+00 4.30E+00 0.0001 1.12E-11 MP 1987 Sun-4 5.00E+06 2.50E+06 1.60E+01 na 1.02E+01 1.43E+01 0.000779 6.05E-11 MP 1988 Mac-IIx na na 4.00E+00 na 3.90E+00 1.28E+01 0.001094 8.55E-11 MP 1988 PC Brand 386-25 na na 1.00E+00 na 1.15E+01 3.38E+00 0.000019 1.52E-12 MP 1990 Dell 320LX na na 1.00E+00 na 1.25E+01 3.62E+00 0.000019 1.51E-12 MP 1990 Mac Iifx na na 4.00E+00 na 1.00E+01 1.23E+01 0.000072 5.76E-12 MP 1991 Gateway-486DX2/66 na na 8.00E+00 2.50E+04 5.30E+01 4.67E+00 0.000006 4.49E-13 MP 1992 IBM PS/2 90 na na 8.00E+00 na 2.24E+01 1.12E+01 0.000029 2.38E-12 MP 1992 NEC Powermate na na 4.00E+00 na 2.18E+01 5.58E+00 0.000016 1.28E-12 MP 1992 IBM PS/2 55-041 na na 4.00E+00 na 1.06E+01 2.32E+00 0.000015 1.25E-12 MP 1993 Pentium PC 1.00E+07 na na 6.00E+04 8.23E+01 2.82E+00 0.000002 1.90E-13 MP 1993 Gateway P5-75 na na 1.60E+01 7.50E+04 1.03E+02 2.26E+00 0.000002 1.18E-13 MP 1994 Power Tower 180e na na 1.60E+01 1.80E+05 3.00E+02 3.63E+00 0.000001 6.10E-14 MP 1995 Intel Xpress/60 na na 8.00E+00 6.00E+04 7.00E+01 2.14E+00 0.000002 1.79E-13 MP 1995 PowerMac 7600/132 na na 1.60E+01 na 1.60E+02 3.21E+00 0.000001 1.05E-13 MP 1996 Pentium PC 1.00E+08 na na 6.00E+04 1.79E+02 2.08E+00 0.000001 6.81E-14 MP 1996 Dell Dimension Pro150 na na na 1.50E+05 4.47E+02 6.24E+00 0.000001 6.93E-14 MP 1997 Gateway G6-200 na na 6.40E+01 2.00E+05 3.50E+02 3.00E+00 0.000001 4.61E-14 MP 1998 Pentium II PC 2.00E-10 na 6.40E+01 2.33E+05 4.98E+02 1.50E+00 2.38E-07 1.87E-14 MP 1999 Pentium II/455 na na 6.40E+01 4.55E+05 9.73E+02 1.96E+00 1.49E-07 1.15E-14 MP 1999 Pentium III/500 na na 1.28E+02 5.00E+05 1.07E+03 2.45E+00 1.61E-07 1.24E-14 MP 2000 Mac G4/500 dual na na 2.56E+02 5.00E+05 1.07E+03 3.31E+00 2.06E-07 1.58E-14 MP 2001 Net vista a40i na na 1.28E+02 1.00E+06 2.14E+03 1.34E+00 5.22E-08 3.91E-15 MP 2001 Gateway Athlon na na 1.28E+02 1.20E+06 3.42E+03 1.85E+00 4.09E-08 3.06E-15 MP 2001 Pentium IV (Dell 8100) na na 1.28E+02 1.50E+06 2.81E+03 1.62E+00 4.52E-08 3.38E-15 MP Sources: Basic data are from Hans Moravec, Mind Children: The Future of Robot and Human Intelligence, Harvard University Press, Cambridge, MA, 1988, especially Appendix A2 and p. 63f. These have been updated on his web site at at www.transhumanist.com/volume1/moravec.htm. An additional source (which appears largely derived from Moravec) is Ray Kurzweil, The Age of Spiritual Machines : When Computers Exceed Human Intelligence, Viking Press, 1999. The data were also available online at www.penguinputnam.com/kurzweil/excerpts/chap1/ch1note19.htm although this site appears to have been discontinued. The latest machine is for a 1.5 GHz Dell Dimension 8100 with 128 MB of RAM and a 40 GB hard drive available from www.dell.com . Information on many calculators is available at www.hpmuseum.com . A particularly valuable collection of benchmark data using the Dhrystone benchmark was available at http://performance.netlib.org/performance/html/dhrystone.data.col0.html . This includes Dhrystone ratings from the Apple II through the Pentium Pro 2oo MHz. The single most useful source for the period from the ENIAC through 1955 is the comprehensive survey by Martin H. Weik, A Survey of Domestic Electronic Digital Computing Systems, Ballistic Research Laboratories, Report No. 971, December 1955, Department of the Army Project No. 5b0306002, Ordnance Research And. Development Project No. Tb3-0007, Aberdeen Proving Ground, Maryland available at http://ed-thelen.org/comp-hist/BRL.html . This was followed with two further surveys. A full set of documentation along with sources for particular machines will be provided online when the project is completed. Note: L = manual; M = mechanical; V = relays and vacuum tubes; E = transistors and other electronic; MP = microprocessors. -45-