A Comparison of Linux Performance Tuning Books

 in
Pat's back with more mini book reviews to help you sort through the abundance of HOWTOs, references and tech books published every day.

Title: Optimizing Linux Performance

Publisher: HP Professional Books

ISBN: 0-13-148682-9

Price: $49.99

Title: Performance Tuning for Linux Servers

Publisher: IBM Press

ISBN: 013144753X

Price: $54.99

Tuning Linux systems for performance is an essential task for any system administrator, but it also is one of the least documented. Without a hard-won understanding, performance tuning often can seem like some kind of black magic or performance art.

I've recently had the opportunity to read two books on the topic: Optimizing Linux Performance, written by Phillip G. Ezolt and part of the HP Professional Books imprint, and Performance Tuning for Linux Servers, edited by Sandra K. Johnson and published by IBM Press. As both of these titles came out of large companies that are throwing a lot of support behind Linux, I thought it would be worthwhile to compare the two books.

A Comparison

First, the similarities. Being that both of these books were written on the same topic, you might expect a fair amount of overlap--and you'd be right. Both of them cover a variety of standard tools for investigating performance problems: top, netstat, sar, oprofile and friends all receive good coverage. Both books also provide some recommendations for the process of performance tuning itself. It's also nice to see that both books provide some example performance tuning scenarios.

The books share a common flaw too. Although they both talk about performance tuning on a single box, occasionally using graphical tools, neither provides serious coverage of tuning an application in an enterprise setting. This task is a different beast altogether from single-box tuning; the tool sets are different, although they do overlap; the kinds of problems and solutions differ widely; and the people involved--it's almost never only one person--need to correlate much more data to come to a solution. For a large Web application such as Amazon.com, it might not be unusual to see 30 or more individual systems--Web servers, load balancers, routers, application servers and databases servers--involved in a single transaction.

These similarities, both good and bad, do not mean these books are identical twins, however. There are a number of differences. Optimizing Linux Performance, a smaller softcover book, covers less ground but does a better job with what it does cover. Linux System Tuning, a serious-looking hardback, seems as though it should provide deeper coverage of more topics, but it is marred by a number of flaws, as discussed below.

Overall, Optimizing Linux Performance (ISBN 0-13-148682-9) is a solid book. Ezolt starts out with an overview of performance tuning and provides a number of tips to help you make system tuning a repeatable and understandable process. He moves on to cover performance analysis tools for system CPU, system memory, process-specific CPU, process-specific memory, disk I/O and networking. He also includes a chapter on using "helpers" to automate using these tools, recording their output and analyzing the data you've collected. He then looks at the tools in situ, addressing specific kinds of performance bottlenecks and walking through three examples he calls "Performance Hunts". Finally, he closes with a chapter addressing the current state of Linux-based performance tools and what can be done to improve them.

At 326 pages, excluding appendices, and 13 chapters, Optimizing Linux Performance isn't a huge book, but I'd say it's worth the $49.99 cover price if you're getting started with performance tuning on Linux.

Performance Tuning for Linux Servers (ISBN 0-13-144753-X) has some problems. The biggest problem I found is it was written by many authors--more than 20--and it reads that way. Information often is repeated and sometimes in contradictory ways, and the style and usability are ragged. I also was put off by the large number of simple errors, such as the claim that ext2fs was the first filesystem on Linux. If the simple stuff is wrong, how can I trust the other information?

The book does have some value though. It provides a much more thorough background on Linux systems than does Optimizing Linux Performance. Performance Tuning for Linux Servers discusses more tools, including Performance Inspector, which I'd never heard of before. It also feels like there is a wider breadth of expertise under the hood of this book.

I expected more from a book by IBM however, and unless you're shooting for completeness, I don't recommend spending the $54.99 for this book. Hopefully an improved second edition that's worth the cost will come along soon; otherwise, look for it at a sale.

______________________

-- -pate http://on-ruby.blogspot.com

Comments

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Optimizing Linux Performance - book

Scott Field's picture

I have the book Optimizing Linux Performance. I'd highly recommend it for a number of reasons. First, the three examples of tracking down performace problems involve satisfying real life examples. Second, it explains the use of a lot of tools. Third, I learnt stuff about top V3 I didn't know, not to mention oprofile, sar, ltrace and strace. This book significantly expanded my knowledge of Linux performance tuning and troubleshooting. It is relevant to "enterprise" tuning because a server farm is composed of individual servers. However I would be first in line to buy a follow up volume covering "Web servers, load balancers, routers, application servers and databases servers" as mentioned in the review. Overall this book is definitely worth the money in my opinion.

White Paper
Linux Management with Red Hat Satellite: Measuring Business Impact and ROI

Linux has become a key foundation for supporting today's rapidly growing IT environments. Linux is being used to deploy business applications and databases, trading on its reputation as a low-cost operating environment. For many IT organizations, Linux is a mainstay for deploying Web servers and has evolved from handling basic file, print, and utility workloads to running mission-critical applications and databases, physically, virtually, and in the cloud. As Linux grows in importance in terms of value to the business, managing Linux environments to high standards of service quality — availability, security, and performance — becomes an essential requirement for business success.

Learn More

Sponsored by Red Hat

White Paper
Private PaaS for the Agile Enterprise

If you already use virtualized infrastructure, you are well on your way to leveraging the power of the cloud. Virtualization offers the promise of limitless resources, but how do you manage that scalability when your DevOps team doesn’t scale? In today’s hypercompetitive markets, fast results can make a difference between leading the pack vs. obsolescence. Organizations need more benefits from cloud computing than just raw resources. They need agility, flexibility, convenience, ROI, and control.

Stackato private Platform-as-a-Service technology from ActiveState extends your private cloud infrastructure by creating a private PaaS to provide on-demand availability, flexibility, control, and ultimately, faster time-to-market for your enterprise.

Learn More

Sponsored by ActiveState