zbMATH — the first resource for mathematics

The art of computer systems performance analysis: techniques for experimental design, measurement, simulation, and modeling. (English) Zbl 0824.68013
New York, NY: Wiley. xxvii, 685 p. (1991).
Summary: Professor Jain has written a text on the performance analysis of computer systems which can serve as a reference for both specialists and nonspecialists alike. His text is divided into six parts, each of which consists of a half-dozen or so chapters, and covers diverse topics ranging from Measurement Tools to Experimental Design. Each part of this reference text presumes a minimum of exposure to the field and little or no facility with mathematical technique. The author’s style is light and even entertaining, although it is clear that significant practical experience has informed the overall design of the text and the specific material selected. As the author correctly states in his introduction: “There are many books on computer systems performance. These books discuss only one or two aspects of performance analysis, with a majority of the books being queueing theoretic. Queueing theory is admittedly a helpful tool, but knowledge of simulation, measurement techniques, data analysis and experimental design is invaluable.” His aim was to fill a void by writing a book that integrates these rather diverse aspects of performance analysis, and I believe that he has largely succeeded. Part I of his text, “An Overview of Performance Analysis,” discusses performance techniques and metrics, but only after presenting common mistakes which can be made (consciously and otherwise) in presenting performance data and reaching conclusions. This part of the text sets the style: short chapters with witty headings, each of which emphasizes central ideas and encapsulates significant results in a bold face “box.” Each chapter ends with a list of exercises and each part ends with a list of references for further reading. Part II studies measurement techniques and tools, beginning with a discussion of workload selection and their characterization. Software and hardware monitors, capacity planning, and the art of data presentation is surveyed and this part ends with a discussion of “ratio games.” The witty and particularly relevant heading for this last topic is: “If you can’t convince them, confuse them.” Part III is entitled “Probability Theory and Statistics”, with the emphasis not surprisingly on the latter. Confidence interval estimation, a brief mention of hypothesis testing, and a discussion of regression models completes this part. Although this part is an attempt to make the text self-contained, one obviously cannot do justice to these concepts in a quick survey, and the author’s attempt is no exception. Part IV is a serious attempt to survey experimental design and analysis techniques. Factorial designs with and without replication, fractional factorial designs, and one- and two-factor experiments are considered in succession. These topics are often ignored by the performance analysis community, and they are a welcome addition to a text of this kind. Part V is an introduction to simulation techniques, and Part VI surveys simple and widely used queuing models. The author explains the major pitfalls of a simulation clearly and with emphasis – beginning Part V with sage advice: “The best advice to those about to embark on a very large simulation is often the same as Punch’s famous advice to those about to marry: Don’t!” Part IV is a brief introduction to queueing theory which only brushes the surface of this important performance analysis tool. Nevertheless, the standard models (from the M/M/1 single-server model through product form queueing networks) are explained briefly and their essential formulas are recorded. This last part of the text has the form of a “cook book,” and the better part of wisdom to this reviewer would have been to forgo the more complex models (queueing networks certainly), and emphasize the more widely used and more easily digested single-server models. Professor Jain has drawn on his considerable practical experience at the Digital Equipment Corporation in writing this book, and some of the material has been used by him in a graduate seminar on computer systems at the Massachusetts Institute of Technology. Overall, this text draws together much of the material required by the practicing performance analyst in an enjoyable and easo-to-read form.

68M20 Performance evaluation, queueing, and scheduling in the context of computer systems
68U20 Simulation (MSC2010)
68-01 Introductory exposition (textbooks, tutorial papers, etc.) pertaining to computer science