Pages: pp. 4-5
Abstract—A new study explains why the days of obtaining performance increases due to higher processor speed are mostly over—and where we go from here.
Keywords—Computing performance, microprocessing speed, Moore's law, parallel computing, scientific computing
"The times, they are a-changing." —Bob Dylan
THE NATIONAL ACADEMY OF SCIENCES (NAS) RECENTLY RELEASED A NATIONAL RESEARCH COUNCIL (NRC) STUDY ENTITLED THE FUTURE OF COMPUTING PERFORMANCE. IT CONFIRMED WHAT WE'RE ALL OBSERVING—THAT IS, THAT COMPUTING IS UNDERGOING A RADICAL
change. 1 The study summarizes why the processing speed of individual computer chips will no longer increase dramatically each year, discusses the implications of this for computing, and outlines what is needed to continue to improve computing performance in the future.
Prior to 2004, the computer microprocessor's clock frequency (and the chip's peak processing power) was increasing by a factor of 100 every decade; in 2004, due to the electronic properties of CMOS technology silicon chips, it became impossible to increase the clock frequency without increasing the power density to unacceptable levels. Applications have generally run faster each year with little or no changes in the program. In 2004, the rate of increase slowed to about a factor of two per decade. The clock speed has now reached a plateau of approximately 3-4 GHz. The interpretation of Moore's law that implies that clock frequency will continue to increase exponentially is no longer valid (see http://en.wikipedia.org/wiki/Multi-core_processor). The impact of this has been rumbling through the world of high-performance computing since 2004 and is now starting to affect general computing. Up until 2004, the continual reduction in computer chips' feature size let chip manufacturers increase clock frequency while maintaining a constant power density for single processors.
This is not good news for scientific and general computing. As the NRC study documents, progress in computing—and in a significant portion of US international technology competitiveness—is due to the continued growth of computing performance. However, all is not lost. It will still be possible to continue reducing microprocessors' feature size for at least another five to 10 years, so Moore's law will continue to be valid as stated in his original paper. 2 Although microprocessors' raw performance speed will no longer improve, chip manufacturers can continue to increase the number of processors per chip without increasing the power density so that chips can perform more operations per second, even if single processor performance doesn't increase. This has led to "many-core" chips, which hold an increasing number of processors. Companies have announced chip designs with several hundreds of cores ( http://en.wikipedia.org/wiki/Multi-core_processor), so we can reasonably expect chips with thousands of cores and even more in the future.
Unfortunately, achieving better performance with this new, massively parallel computer architecture requires major changes in most software. 3 The days of obtaining performance increases due to higher processor speed are mostly over. Most computer programs are sequential—that is, they perform operations sequentially, not in parallel, which is problematic as exploiting the new, massively parallel computers will require programs that can perform many calculations in parallel, something only a few highly advanced programs are now able to do. The NRC study describes the implications of this for computing:
To increase the challenge, it's likely that single chips will have many different types of processor architectures. For instance, many chip vendors have achieved increased processor speed of factors of 10 to 100 or more using data-streaming concepts employed by general-purpose GPUs (GPGPUs; see http://en.wikipedia.org/wiki/GPGPU). Exploiting these "heterogeneous" architectures will require building applications of even greater complexity.
The NRC study recommended six high-priority research and development programs 1 that are needed to make the transition from sequential computing to massively parallel computing with heterogeneous processors:
The report summarizes each topic's need and scope and argues convincingly that we must address these areas if we are to have applications that can exploit the new generation of computer architectures.
At the 22 March 2011 meeting of the National Academies in Washington, DC in which review panel members outlined the study, a member of the audience said, "There have been many studies in the past that pointed out the need for more R&D on these topics, and nothing happened. Why will it be different this time?" Samuel Fuller, the study chair, said the difference is that both chip and computer vendors and the federal agencies now recognize the problem and consequences if application performance doesn't improve. 3 Specifically, vendors recognize that no one will buy their new products if those products don't offer greater functionality and performance, while the government recognizes that US economic and military competitiveness are strongly tied to increased computer performance. The NSF and the US Department of Energy are beginning to address these issues.
But will these efforts be enough? Even if all of the research topics receive considerable support, it will be many years before the impact is felt. It won't be easy and will take time for the computing community to go from approximately 1,000 parallel programmers to 100,000–200,000 parallel programmers. New computer languages and interface standards take time to mature and achieve broad adoption, and so on. Although it's clear that computing has "suddenly" become a lot more challenging, the study also makes it clear that there are ways to continue improving computing performance if we take the right steps. As a start, I recommend that everyone in computing read the NRC study.