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 1
SUMMARY
During the past ten years a substantial literature on methods for the
evaluation of the performance of computer systems was developed by the
community of industrial and academic scientists and engineers.
Noteworthy successes were achieved in the evaluation of performance of
sequential architecture machines on applications comprising data
reduction and manipulation. For such systems and applications,
theoretical models and performance measures were developed with good
predictive power. In essence, these models enjoy a sound scientific
underpinning. Much less success and maturity, however, characterize the
methods and measures of performance evaluation of computer systems that
must execute scientific applications whose widely varied computational
structures lead to diverse and poorly characterizable workloads.
Performance evaluation is especially difficult and problematical for
supercomputers--general purpose systems devoted to large-scale
scientific computations--because of their complexity, diversity of
architectures, and the demanding nature of the applications they
undertake. The qualitative nature of the performance evaluation for
supercomputers departs from an emphasis on throughput and balanced
maximal utilization of all components of the system. The new emphasis
is primarily on the computational speed of the processors and
secondarily on assuring that specific demands by the computational
structure of the application on a particular component of the system do
not impede the potential performance of the whole system.
Thus, in spite of progress, methods and measures for the evaluation
of supercomputer performance need further improvement. Metrics, such as
millions of floating point operations per second (MFLOPS) and millions
of instructions per second (MIPS), and certain test program benchmarks
are repeatedly used. However, the interpretation of these quantities
and their use can be contradictory and misleading. There is ? at this
time, no commonly accepted methodology for the evaluation of the
performance of supercomputer systems and no standard set of metrics for
the representation of performance. More powerful evaluation methods are
essential for comparing competing systems, allocating available machine
resources, matching specific computing tasks to specific hardware, and
1
OCR for page 2
2
designing new systems. To be useful, evaluation methods should
encompass the complexity of supercomputer systems, their variety, and
their diverse applications. These are complex and novel expectations of
the evaluation process. Progress is being made, but there are strong
indications from the current debate in the literature and technical
journals, as well as in the trade press, that performance evaluation of
supercomputer systems has not developed to the desired level of
sophistication and coherence.
The importance of performance evaluation grows as the capability and
cost of the system grow. Supercomputers, vital components in the
industry and defense of the nation, are used precisely because they
provide the highest performance; and they are acquired at high cost.
Use of the full capability of such resources is an obvious aim.
The evaluation of a supercomputer should be based on more than its
speed, throughput, and cost. The issues of obsolescence, compatibility,
and adherence to accepted standards must be considered in both
acquisition and design. Consequently, these important criteria should
be an integral part of a comprehensive evaluation methodology .
New research programs are emphasizing the design and development of
more powerful supercomputers and of techniques for their utilization.
An inability to assess and measure accurately the performance of new
architectural designs, which often use many processors in parallel,
would inhibit effective development and invite the possibility of
overlooking fruitful ideas in architecture and algorithm design. In a
real sense, research in new computer architectural concepts drives the
need for performance evaluation soundly based in theory.
In recognition of this problem, this committee was to review the
state of the art in supercomputer performance evaluation, to identify
reasonable expectations for improvement, and to sketch an agenda for
research that would lead to the desired improvements. This report is an
initial step, which should be followed by support of research by the
funding agencies, conduct of research by the academic and industrial
communities, and consolidation of progress by a group of qualified
experts organized under some formal mechanism.
The remainder of this summary is organized around the conclusions and
recommendations of the report, drawing for support on key points from
the several chapters.
CONCLUS IONS
The conclusions of the study are stated below, each one followed by a
brief discussion.
OCR for page 3
3
Conclusion One
Some of the methods. and corresponding metrics, used in the past are
not well suited for the performance evaluation of current and future
supercomputer systems. ~
The questions central to the evaluation of supercomputer performance are
different in nature from those addressed by the established methods of
computer performance analysis; for this reason established methods have
not been successfully applied. For example, many current performance
models for supercomputers emphasize processor speed in terms of hardware
features (instructions, floating point operations, logical inferences,
and so forth), ignoring the performance of the other components of the
system, such as the operating system, compilers, and input-output
devices. Supercomputers have complex structures that make it hard to
apply these simple performance models. Today it is axiomatic that
supercomputer system performance is a function of problems,
implementation, and algorithms. The recent advent of diverse
architectures, radically different from each other and from the
sequential von Neumann type, has further invalidated a simple approach
and made it even more evident that there is an urgent need for the
development of methods, models, and metrics capable of describing the
performance of the overall system, both hardware and software. The
great variety of supercomputer structures in use or being proposed today
has precluded even a satisfactory taxonomy of systems, let alone an
accurate performance model.
Conclusion Two
Some performance measures and metrics in current use for the
evaluation of supercomputers, such as rates of hardware operation and
simple kernel execution are often misleading and misused.
The lack of good methods of performance evaluation for supercomputers
has led to extensive use of certain specific measures and benchmarks as
indicators of a system's performance. These can be helpful, but they
are hard to extrapolate accurately across a variety of machines and
algorithms. Several popular metrics (such as peak MFLOPS) and
benchmarks exist today; the performance of machines is often quoted in
terms of these. The existence of these metrics and benchmarks must be
regarded favorably, but their use raises serious questions of
oversimplification. They are not meaningful for a wide range of
circumstances and applications, and they do not represent the complex
relationships between the diverse hardware and software components of a
supercomputer. Often, metrics that measure merely hardware features are
poorly correlated with the performance of an entire system on a real
OCR for page 4
4
application. There is, at this time, no agreed upon methodology for the
use of benchmarks or their interpretation. There is considerable
mistrust of simplistic performance claims throughout the entire
supercomputer community.
Conclusion Three
No well developed scientific foundation exists for supercomputer
Performance evaluation.
Performance evaluation of supercomputers, especially those with parallel
architecture, has lagged behind other developments in computer science
and engineering. A scientific approach, embrac ing the diversity and
complexity of the systems and providing a clear methodology for
evaluating them, would offer better promise of success. A central issue
in understanding performance measurements on supercomputers involves the
pairing of architectures and applications. Recent work on the study of
architectural and algorithmic taxonomies has identified differences that
are critical to performance; further work could lead to the successful
development of useful and scientific performance models and more
systematic, comprehensive benchmarks.
The body of the report outlines a five-stage approach to performance
evaluation models: (1) determine the major supercomputer application
areas and the predominant mathematical solution techniques, (2) select a
collection of representative programs covering scientific disciplines
and solution techniques, (3) define the appropriate parameters of the
applications and the architectures that will allow models to be
developed, (4) define the metrics necessary to understand the
performance of the models relative to those parameters, and (5) assess
the relationship between the computational and architectural models.
The research agenda in the body of the report, outlined later in our
recommendations, should establish the scientific basis that is now
insufficiently developed for comprehensive evaluation methods.
Conclusion Four
Performance evaluation of supercomputers is an emerging area of
significant interest and importance. There are numerous ongoing
efforts by industrial. governmental, and academic laboratories: but
more effective mechanisms for teaching. assessing. and disseminating
progress in this area are desirable.
There is considerable activity by both vendors and buyers in
supercomputer system performance definition. There is increasing
research at academic, industrial, and national laboratories supported by
OCR for page 5
5
significant initiatives by the U.S. Department of Energy; the National
Science Foundation; and the U.S. Department of Defense, including the
Office of Naval Research and the Defense Advanced Research Projects
Agency. These activities reflect the increased importance, and need for
progress, in supercomputer performance evaluation. There do not seem to
be highly effective mechanisms for the discussion and dissemination of
research and of its transfer into methodology. In particular, the
committee sees no effective organization to evaluate, track, and
translate as rapidly as possible research and experience in this area
into commonly accepted criteria for performance evaluation.
RECOMMENDATIONS
On the basis of the foregoing conclusions, the committee offers the
following recommendations, each one stated first and then briefly
discussed.
Recommendation One
Performance evaluation methods for supercomputer performance, beyond
those already available should be developed and used: and these
methods should be based on sufficiently general and unifying concepts
to address the whole computer system including multiple processors
memory input-output subsystems, and software.
The current unsatisfactory situation In supercomputer performance
evaluation can be overcome because better performance models and more
systematic and comprehensive test programs are possible. The body of
this report outlines a reasonable approach to this end, which should
result in methods and measures having validity and usefulness comparable
to those currently in use by the general purpose computer performance
evaluation community.
The performance evaluation process is cyclic in nature, requiring
several iterations for a satisfactory result. We begin with the systems
of interest, either existing or proposed supercomputers, and generate
either empirical or analytical models of them. We experiment by
measuring performance, if the sys tem is an exis tiny computer, or by
simulating performance, if the system is a proposed one. The data from
the experiments are then combined to give several metrics of
performance. The system or the model of it, is modified and the cycle
is repeated.
OCR for page 6
6
Recommendation Two
Supercomputer systems should be provided with hardware and software
for the collection of performance evaluation data.
Some systems come equipped by the vendor with sophisticated hardware and
software for collecting performance data. This feature gives the
researcher and user the tools for experimentation and observation that
are essential to scientific understanding of the key issues underlying
performance evaluation.
Recommendation Three
Funding agencies should support more emphasis on supercomputer
performance evaluation methods in existing research and development
programs and should initate the support of basic research in the
science of supercomputer performance evaluation.
The body of the report suggests an agenda, or framework, for research,
the outcome of which is expected to provide the scientific underpinning
for a sound methodology of computer performance evaluation. The
research framework centers on the following topics:
1. Hierarchical characterization of applications and algorithms in
terms of their fundamental units of computation at several levels of
resolution.
2. Procedures for synthesizing fundamental arithmetic and logical
operations on arrangements of data into powerful computational
procedures (algorithms).
3. Procedures for synthesizing fundamental machine functions into
application-specific architectures that meet specific performance goals.
4. Methods for modeling and evaluating the performance of
supercomputers .
fundamental arithmetic and logica
into powerful computational
Recommendation Four
The U.S. Department of Energy and the National Science Foundation
should undertake a leadership role in establishing a formal mechanism
to track. assess and disseminate research results with a view to
bringing about commonly accepted methodologies of supercomputer
performance evaluation.
A number of centers supported by the Defense Advanced Research
Projects Agency and the Office of Naval Research are actively evaluating
OCR for page 7
novel architectures. The National Bureau of Standards, with support
from the Defense Advanced Research Projects Agency, has initiated a
research program on the evaluation of performance of diverse
architectures. The National Aeronautics and Space Administration both
conducts and supports much computer research. The U.S. Department of
Energy supports significant research in supercomputer performance
evaluation, both in its own laboratories and at universities. The
National Science Foundation provides research support in this area to
the academic community, and its Directorate for Computer and Information
Science and Engineering has a direct interest in supercomputing. Major
U.S. vendors have active research and development groups in
supercomputer evaluation methods.
The manifold activities taking place in this area would benefit by
increased communication and leveraging of effort. Although the
development of standards is certainly not appropriate now, the
development and distribution of a coherent set of measurement criteria
Is .
The committee believes it would be desirable for one or two of the
federal funding agencies, perhaps in cooperation with others, to
establish a group of experts who would, over a period of time, collect
and evaluate research results and experience in the area of
supercomputer performance evaluation and attempt to translate it into a
broadly usable collection of methods and measures.
The experience in
this field of the U.S. Department of Energy and the recent emphasis on
supercomputing at the National Science Foundation suggest that these are
the appropriate lead agencies for this task.
OCR for page 8
Representative terms from entire chapter:
supercomputer performance