Niwot Ridge Resources

A Source of Information for Mission Critical Systems, Management Processes, and Strategies

Performance Analysis

One issue in the software project management domain is determining how the system will behave once it is functional. Waiting until it is functional to find out can be disastrous. Performance analysis is one way to address some of the design issues up front.

  • The Art of Computer Systems Performance Analysis, Raj Jain, John Wiley and Sons, 1991. There are several classic text in performance modeling. This is one of the best in that it covers most of topics found in the other books. This book should be read by the architect, since it provides all the foundation for performance and reliability modeling.

The two other "backup" books for the really serious analysis person are Introduction to Probability Models, 4th ed, Sheldon Ross, Academic Press and Probability & Statistics with Reliability, Queuing and Computer Science Applications, Kishor Trivedi, Prentice Hall. Both of these books are heavy going for the uninitiated, but they form the foundation of the Markov models used in most queuing analysis programs.

  • The Practical Performance Analyst, Neil Gunther, McGraw Hill. As the title says, this is a very practical book and should be part of our engineering process. Gunther does not use Markov models (which do not always have closed forms to the differential equations representing flow), but uses a meta-stable evaluation, which assumes all process are in steady state. Anyone who says performance analysis is not necessary during the architecture phase of the project, should read this book. Understanding how the system will scale, behave under load, respond to impulse requests, and generally operate is mandatory for a commercially robust system.

In order to have a full understanding of the foundations of queuing theory the following texts should have been read. This does not mean that they will have been read and understood, but at least these books should be on the shelf of anyone calling themselves a Systems Architect: Queuing Systems: Volume 1: Theory and Volume 2: Computer Applications, Leonard Klienrock, John Wiley & Sons, 1975. These two volumes are the foundation of all things "queuing", including packet switching, the internet, operating systems performance modeling, database transaction modeling. 

  • Simulating Computer Systems: Techniques and Tools, M. H. MacDougall, MIT Press, 1987. This text is an introduction to computer system performance modeling. It includes models for networks, processors, and databases.

Queuing Theory, Markov Chains, Statistics, and Other Mathematical Texts

One of the primary missing elements in modern computing is a good theoretical foundation for the design of systems. In the science world (of which compute science is a very weak cousin), mathematics is the basis for all understanding. The following mathematics texts should be considered fundamental to anyone working in the area of system design. Without this understanding the programmer or software engineer cannot claim to be literate in the field.

  • Queuing Theory: Volume 1: Theory  and Volume 2: Computer Applications, Leonard Kleinrock, John Wiley and Sons, 1975. These text are the basis of ALL computer queuing theory. They are out of print, and impractical for the non–mathematical person to read. But their contents forms the basis of all they we experience on the Internet, Ethernet, distributed operating systems, and digital communications.

  • Priority Queues, N. K. Jaiswal, Academic Press. This book provides a comprehensive discussion of various priority queuing processes.

  • Renewal Theory, D. R. Cox, Methuen's Monographs on Applied Probability and Statistics. This book is a fundamental source for reliability and queuing performance models.

  • Queues, D. R. Cox and Walter L. Smith, Chapman and Hall. This is the original source book on queues.

  • Decomposability: Queuing and Computer System Applications, P. J. Courtois, Academic Press.

  • Regeneration and Networks of Queues, Gerald S. Shedler, Springer Verlag.

  • Graph Theory, Wataru Mayeda, Wiley Interscience.

  • Markov Chains: Theory and Applications, D. L. Isaacson and R. W. Madsen, John Wiley & Sons

  • Probability, Random Variables, and Stochastic Processes, Athanasios Papoulis, McGraw Hill, 1965. This is the classic engineering probability and stochastic process book. I have personally designed many control system software algorithms using the materials in the this book. Much of the flight control systems in modern aircraft and ship steering controls are based on the stochastic process tracking algorithms described here.

  • Differential Equations and Their Applications Fourth Edition, Martin Braun, Springer Verlag, 1993. Almost all of nature can be described by second order linear differential equations. This includes computing systems, queuing systems, reliability systems and most of the performance management problems. This is a text with a rich set of application examples.


Home | Search |Site Map | Copyright