Below are the first 10 and last 10 pages of uncorrected machine-read text (when available) of this chapter, followed by the top 30 algorithmically extracted key phrases from the chapter as a whole.
Intended to provide our own search engines and external engines with highly rich, chapter-representative searchable text on the opening pages of each chapter. Because it is UNCORRECTED material, please consider the following text as a useful but insufficient proxy for the authoritative book pages.
Do not use for reproduction, copying, pasting, or reading; exclusively for search engines.
OCR for page R1
T H E F U T U R E O F COMPUTING PERFORMANCE Game Over or Next Level? Samuel H. Fuller and Lynette I. Millett, Editors Committee on Sustaining Growth in Computing Performance Computer Science and Telecommunications Board Division on Engineering and Physical Science
OCR for page R2
THE NATIONAL ACADEMIES PRESS 500 Fifth Street, N.W. Washington, DC 20001 NOTICE: The project that is the subject of this report was approved by the Gov- erning Board of the National Research Council, whose members are drawn from the councils of the National Academy of Sciences, the National Academy of Engi - neering, and the Institute of Medicine. The members of the committee responsible for the report were chosen for their special competences and with regard for appropriate balance. Support for this project was provided by the National Science Foundation under award CNS-0630358. Any opinions, findings, conclusions, or recommendations expressed in this publication are those of the authors and do not necessarily reflect the views of the organization that provided support for the project. International Standard Book Number-13: 978-0-309-15951-7 International Standard Book Number-10: 0-309-15951-2 Library of Congress Control Number: 2011923200 Additional copies of this report are available from The National Academies Press 500 Fifth Street, N.W., Lockbox 285 Washington, D.C. 20055 800 624-6242 202 334-3313 (in the Washington metropolitan area) http://www.nap.edu Copyright 2011 by the National Academy of Sciences. All rights reserved. Printed in the United States of America
OCR for page R3
The National Academy of Sciences is a private, nonprofit, self-perpetuating society of distinguished scholars engaged in scientific and engineering research, dedicated to the furtherance of science and technology and to their use for the general welfare. Upon the authority of the charter granted to it by the Congress in 1863, the Academy has a mandate that requires it to advise the federal govern - ment on scientific and technical matters. Dr. Ralph J. Cicerone is president of the National Academy of Sciences. The National Academy of Engineering was established in 1964, under the charter of the National Academy of Sciences, as a parallel organization of outstanding engineers. It is autonomous in its administration and in the selection of its mem - bers, sharing with the National Academy of Sciences the responsibility for advis - ing the federal government. The National Academy of Engineering also sponsors engineering programs aimed at meeting national needs, encourages education and research, and recognizes the superior achievements of engineers. Dr. Charles M. Vest is president of the National Academy of Engineering. The Institute of Medicine was established in 1970 by the National Academy of Sciences to secure the services of eminent members of appropriate professions in the examination of policy matters pertaining to the health of the public. The Institute acts under the responsibility given to the National Academy of Sciences by its congressional charter to be an adviser to the federal government and, upon its own initiative, to identify issues of medical care, research, and education. Dr. Harvey V. Fineberg is president of the Institute of Medicine. The National Research Council was organized by the National Academy of Sciences in 1916 to associate the broad community of science and technology with the Academy’s purposes of furthering knowledge and advising the federal government. Functioning in accordance with general policies determined by the Academy, the Council has become the principal operating agency of both the National Academy of Sciences and the National Academy of Engineering in pro - viding services to the government, the public, and the scientific and engineering communities. The Council is administered jointly by both Academies and the Institute of Medicine. Dr. Ralph J. Cicerone and Dr. Charles M. Vest are chair and vice chair, respectively, of the National Research Council. www.national-academies.org
OCR for page R4
OCR for page R5
COMMITTEE ON SUSTAINING GROWTH IN COMPUTING PERFORMANCE SAMUEL H. FULLER, Analog Devices Inc., Chair LUIZ ANDRÉ BARROSO, Google, Inc. ROBERT P. COLWELL, Independent Consultant WILLIAM J. DALLY, NVIDIA Corporation and Stanford University DAN DOBBERPUHL, P.A. Semi PRADEEP DUBEY, Intel Corporation MARK D. HILL, University of Wisconsin–Madison MARK HOROWITZ, Stanford University DAVID KIRK, NVIDIA Corporation MONICA LAM, Stanford University KATHRYN S. McKINLEY, University of Texas at Austin CHARLES MOORE, Advanced Micro Devices KATHERINE YELICK, University of California, Berkeley Staff LYNETTE I. MILLETT, Study Director SHENAE BRADLEY, Senior Program Assistant v
OCR for page R6
COMPUTER SCIENCE AND TELECOMMUNICATIONS BOARD ROBERT F. SPROULL, Sun Labs, Chair PRITHVIRAJ BANERJEE, Hewlett Packard Company STEVEN M. BELLOVIN, Columbia University WILLIAM J. DALLY, NVIDIA Corporation and Stanford University SEYMOUR E. GOODMAN, Georgia Institute of Technology JOHN E. KELLY, III, IBM JON M. KLEINBERG, Cornell University ROBERT KRAUT, Carnegie Mellon University SUSAN LANDAU, Radcliffe Institute for Advanced Study PETER LEE, Microsoft Corporation DAVID LIDDLE, US Venture Partners WILLIAM H. PRESS, University of Texas PRABHAKAR RAGHAVAN, Yahoo! Research DAVID E. SHAW, Columbia University ALFRED Z. SPECTOR, Google, Inc. JOHN SWAINSON, Silver Lake Partners PETER SZOLOVITS, Massachusetts Institute of Technology PETER J. WEINBERGER, Google, Inc. ERNEST J. WILSON, University of Southern California JON EISENBERG, Director RENEE HAWKINS, Financial and Administrative Manager HERBERT S. LIN, Chief Scientist LYNETTE I. MILLETT, Senior Program Officer EMILY ANN MEYER, Program Officer ENITA A. WILLIAMS, Associate Program Officer VIRGINIA BACON TALATI, Associate Program Officer SHENAE BRADLEY, Senior Program Assistant ERIC WHITAKER, Senior Program Assistant For more information on CSTB, see its website at http://www.cstb.org, write to CSTB, National Research Council, 500 Fifth Street, N.W., Washington, D.C. 20001, call (202) 334-2605, or e-mail the CSTB at email@example.com. vi
OCR for page R7
Preface F ast, inexpensive computers are now essential for nearly all human endeavors and have been a critical factor in increasing economic productivity, enabling new defense systems, and advancing the frontiers of science. But less well understood is the need for ever-faster computers at ever-lower costs. For the last half-century, computers have been doubling in performance and capacity every couple of years. This remarkable, continuous, exponential growth in computing performance has resulted in an increase by a factor of over 100 per decade and more than a million in the last 40 years. For example, the raw performance of a 1970s supercomputer is now available in a typical modern cell phone. That uninterrupted exponential growth in computing throughout the lifetimes of most people has resulted in the expectation that such phenom- enal progress, often called Moore’s law, will continue well into the future. Indeed, societal expectations for increased technology performance con - tinue apace and show no signs of slowing, a trend that underscores the need to find ways to sustain exponentially increasing performance in multiple dimensions. The essential engine that made that exponential growth possible is now in considerable danger. Thermal-power challenges and increasingly expensive energy demands pose threats to the historical rate of increase in processor performance. The implications of a dramatic slowdown in how quickly computer performance is increasing—for our economy, our mili - tary, our research institutions, and our way of life—are substantial. That obstacle to continuing growth in computing performance is by now well vii
OCR for page R8
viii PREFACE understood by the designers of microprocessors. Their initial response was to design multiprocessor (often referred to as multicore) chips, but fundamental challenges in algorithm and software design limit the wide - spread use of multicore systems. Even as multicore hardware systems are tailored to support software that can exploit multiple computation units, thermal constraints will con - tinue to be a primary concern. It is estimated that data centers delivering Internet services consume over 1.5 percent of U.S. electric power. As the use of the Internet continues to grow and massive computing facilities are demanding that performance keep doubling, devoting correspond- ing increases in the nation’s electrical energy capacity to computing may become too expensive. We do not have new software approaches that can exploit the innova- tive architectures, and so sustaining performance growth—and its atten- dant benefits—presents a major challenge. The present study emerged from discussions among members of the Computer Science and Telecom - munications Board and was sponsored by the National Science Foun- dation. The original statement of task for the Committee on Sustaining Growth in Computing Performance is as follows: This study will bring together academic and industry researchers, ap- plication developers, and members of the user community to explore emerging challenges to sustaining performance growth and meeting expectations in computing across the broad spectrum of software, hard- ware, and architecture. It will identify key problems along with promis- ing emerging technologies and models and describe how these might fit together over time to enable continued performance scaling. In addition, it will focus attention on areas where there are tractable problems whose solution would have significant payback and at the same time highlight known solutions to challenges that already have them. The study will outline a research, development, and educational agenda for meeting the emerging computing needs of the 21st century. Parallelism and related approaches in software will increase in impor- tance as a path to achieving continued performance growth. There have been promising developments in the use of parallel processing in some scientific applications, Internet search and retrieval, and the processing of visual and graphic images. This report reviews that progress and recom - mends subjects for further research and development. Chapter 1 exam - ines the need for high-performance computers, and computers that are increasingly higher-performing, in a variety of sectors of society. The need may be intuitively obvious to some readers but is included here to be explicit about the need for continued performance growth. Chapter 2 examines the aspects of “performance” in depth. Often used as short- hand for speed, performance is actually a much more multidimensional
OCR for page R9
ix PREFACE concept. (Appendix A provides a brief history of computing performance as a complement to Chapter 2.) Chapter 3 delves into the fundamen - tal reasons why single-processor performance has stopped its dramatic, exponential growth and why this is a fundamental change rather than a temporary nuisance. Chapter 4 addresses the fundamental challenge now facing the computer science and engineering community: how to exploit parallelism in software and hardware. Chapter 5 outlines the committee’s recommended research, practice, and education agenda to meet those challenges. This report represents the cooperative effort of many people. The members of the study committee, after substantial discussions, drafted and worked though several revisions of the report. We particularly appre- ciate the insights and perspectives provided by the following experts who briefed the committee: Jeff Dean, Google, Robert Doering, Texas Instruments, Michael Foster, National Science Foundation, Garth Gibson, Carnegie Mellon University, Wen-Mei Hwu, University of Illinois at Urbana-Champaign, Bruce Jacob, University of Maryland, Jim Larus, Microsoft, Charles Leiserson, Massachusetts Institute of Technology, Trevor Mudge, University of Michigan, Daniel Reed, Microsoft, Phillip Rosedale, Linden Lab, Vivek Sarkar, Rice University, Kevin Skadron, University of Virginia, Tim Sweeny, Epic Games, and Tom Williams, Synopsys. The committee also thanks the reviewers who provided many percep- tive comments that helped to improve the content of the report materi - ally. The committee thanks Michael Marty, who worked with committee member Mark Hill to update some of the graphs, and Paul S. Diette of the Diette Group, who assisted in refining the images. The committee appreci- ates the financial support provided by the National Science Foundation. The committee also gratefully acknowledges the assistance of members of the National Research Council staff. Lynette Millett, our study direc - tor, ably served the critical roles of study organizer, report editor, and review coordinator. Jon Eisenberg provided many valuable suggestions that improved the quality of the final report. It is difficult to overstate the importance of ever-more-capable com-
OCR for page R10
x PREFACE puters to the U.S. industrial and social infrastructure, economy, and national security. The United States cannot afford to let this growth engine stall out, and a concerted effort is needed to sustain it. Several centers for parallel computing have already been established in leading research universities. Those centers are a good start, and additional, strong actions are required in many subdisciplines of computer science and computer engineering. Our major goal for this study is to help to identify the actions and opportunities that will prove most fruitful. Samuel H. Fuller, Chair Committee on Sustaining Growth in Computing Performance
OCR for page R11
Acknowledgment of Reviewers T his report has been reviewed in draft form by individuals chosen for their diverse perspectives and technical expertise, in accordance with procedures approved by the National Research Council’s (NRC’s) Report Review Committee. The purpose of this independent review is to provide candid and critical comments that will assist the institution in making its published report as sound as possible and to ensure that the report meets institutional standards for objectivity, evi- dence, and responsiveness to the study charge. The review comments and draft manuscript remain confidential to protect the integrity of the deliberative process. We wish to thank the following individuals for their review of this report: Tilak Agerwala, IBM Research, David Ceperley, University of Illinois, Robert Dennard, IBM Research, Robert Doering, Texas Instruments, Inc., Urs Hölzle, Google, Inc., Norm Jouppi, Hewlett-Packard Laboratories, Kevin Kahn, Intel Corporation, James Kajiya, Microsoft Corporation Randy Katz, University of California, Berkeley, Barbara Liskov, Massachusetts Institute of Technology, Keshav Pingali, University of Texas, Austin, James Plummer, Stanford University, and Vivek Sarkar, Rice University. xi
OCR for page R12
xii ACKNOWLEDGMENTS Although the reviewers listed above have provided many construc- tive comments and suggestions, they were not asked to endorse the con- clusions or recommendations, nor did they see the final draft of the report before its release. The review of this report was overseen by Butler Lamp - son, Microsoft Corporation. Appointed by the National Research Council, he was responsible for making certain that an independent examination of this report was carried out in accordance with institutional procedures and that all review comments were carefully considered. Responsibility for the final content of this report rests entirely with the authoring com- mittee and the institution.
OCR for page R13
Contents ABSTRACT 1 SUMMARY 5 1 THE NEED FOR CONTINUED PERFORMANCE GROWTH 21 Why Faster Computers Are Important, 22 The Importance of Computing Performance for the Sciences, 29 The Importance of Computing Performance for Defense and National Security, 36 The Importance of Computing Performance for Consumer Needs and Applications, 44 The Importance of Computing Performance for Enterprise Productivity, 47 2 WHAT IS COMPUTER PERFORMANCE? 53 Why Performance Matters, 58 Performance as Measured by Raw Computation, 59 Computation and Communication’s Effects on Performance, 62 Technology Advances and the History of Computer Performance, 65 Assessing Performance with Benchmarks, 68 The Interplay of Software and Performance, 70 The Economics of Computer Performance, 75 xiii
OCR for page R14
xiv CONTENTS 3 P OWER IS NOW LIMITING GROWTH IN COMPUTING 80 PERFORMANCE Basic Technology Scaling, 83 Classic CMOS Scaling, 84 How CMOS-Processor Performance Improved Exponentially, and Then Slowed, 87 How Chip Multiprocessors Allow Some Continued Performance-Scaling, 90 Problems in Scaling Nanometer Devices, 94 Advanced Technology Options, 97 Application-Specific Integrated Circuits, 100 Bibliography, 103 4 THE END OF PROGRAMMING AS WE KNOW IT 105 Moore’s Bounty: Software Abstraction, 106 Software Implications of Parallelism, 110 The Challenges of Parallelism, 116 The State of the Art of Parallel Programming, 119 Parallel-Programming Systems and the Parallel Software “Stack,” 127 Meeting the Challenges of Parallelism, 130 5 R ESEARCH, PRACTICE, AND EDUCATION TO MEET 132 TOMORROW’S PERFORMANCE NEEDS Systems Research and Practice, 133 Parallel-Programming Models and Education, 146 Game Over or Next Level? 150 APPENDIXES A A History of Computer Performance 155 B Biographies of Committee Members and Staff 160 C eprint of Gordon E. Moore’s “Cramming More Components R onto Integrated Circuits” 169 D eprint of Robert H. Dennard’s “Design of Ion-Implanted R MOSFET’s with Very Small Physical Dimensions” 174