Review of System Performance Tuning, 2nd Edition

Title:
System Performance Tuning, 2nd Edition
Author:
Gian-Paolo D. Musumeci and Mike Loukides
Publisher:
O'Reilly and Associates
Date:
2002
ISBN:
0-596-00284-X
Pages:
334
Price:
$39.95

Reviewed by Nick Christenson, npc@jetcafe.org

March 11, 2002

Improving system performance has been an area of interest to a great many system administrators, but there are few really good references on the subject. One that has been frequently referred to is Mike Loukides' O'Reilly classic, the first edition of System Performance Tuning. Unfortunately, this book was originally published in 1990. This is before RAID systems or fast Ethernet became available. In those days, an important aspect of tuning was to remove unnecessary kernel modules in order to reclaim as much memory as possible. Times have changed. The operating systems currently in vogue are quite different from the ones that were predominant a decade ago, and the performance concerns for system administrators have shifted considerably. A new version of this book has been long overdue.

While many of the chapter headings are the same as they were in the first edition of the book, this is not an update. It is a complete rewrite and bears almost no resemblance to the first edition. The reader would be well advised to think of them as two entirely different books. This extends to the focus of the two editions as well. While Loukides' original work concentrated on tools, strategies, and configurable parameters, Musumeci is more interested in explaining what's going on under the hood. In places, this makes System Performance Tuning, 2e feel more like a Unix internals book than a performance tuning book. However, it is critically important to understand the intricacies of today's complex operating systems in order to evaluate how their performance might be improved.

Musumeci is quite thorough in covering the important topics. He discusses memory problems, disks and disk systems, networking issues, source code/compiler issues, and many other topics. He focuses on Solaris and Linux systems, arguably the two most prominent Unix or Unix-like operating systems in use today. He understands the topics in great depth, and a wealth of information is presented. Occasionally, it seems to me that he gets so involved in the depth of explaining how the system works that he sometimes comes up a little short in explaining what can be done to speed them up. There are many good examples of how to improve throughput, but more would be better. Case studies would have been an excellent addition to this this text.

The information in this book is quite detailed. It's not always an easy read, and I would expect that less experienced system administrators could get lost in many places. It's a much more advanced book that the first edition. System Performance Tuning, 2e is probably more valuable to an experienced system administrator, especially if they already have some knowledge of Unix internals.

As important as it is to know how to improve a system's performance, most of the battle comes in finding the bottlenecks in the first place. Musumeci does a good job explaining how to use common system monitoring tools to evaluate where a choke point might be. He describes how to use venerable routines like iostat, vmstat, ps, etc.. He also includes information on many newer tools that even veteran system administrators might not be familiar with, especially those tools which are new in recent versions of Solaris.

While the book could have gone further in depth about tools and tuning, the description of how Linux and especially Solaris systems behave at their lowest levels is outstanding. While it's not always strongly focused on performance tuning, there is a great deal of valuable information in this book, and it will help a system administrator in understanding how to get more performance out of their machines. This book is definitely worth reading.

Capsule:

The second edition of System Performance Tuning is not an update of Mike Loukides' first edition, it's an entirely different book. While it occasionally seems to be more concerned with providing information on system internals than on performance tuning, the information contained within this book is extremely valuable, written by someone who really knows his stuff. Musumeci has done a good job in producing a sophisticated book that is definitely worth reading.

Click here to return to the index of reviews.