| | Copyright |
| | Hewlett-Packard® Professional Books |
| | Preface |
| | | Why Is Performance Important? |
| | | Linux: Strengths and Weakness |
| | | How Can This Book Help You? |
| | | Why Learn How to Use Performance Tools? |
| | | Can I Tune for Performance? |
| | | Who Should Read This Book? |
| | | How Is This Book Organized? |
| | Acknowledgments |
| | About the Author |
| | Chapter 1. Performance Hunting Tips |
| | | Section 1.1. General Tips |
| | | Section 1.2. Outline of a Performance Investigation |
| | | Section 1.3. Chapter Summary |
| | Chapter 2. Performance Tools: System CPU |
| | | Section 2.1. CPU Performance Statistics |
| | | Section 2.2. Linux Performance Tools: CPU |
| | | Section 2.3. Chapter Summary |
| | Chapter 3. Performance Tools: System Memory |
| | | Section 3.1. Memory Performance Statistics |
| | | Section 3.2. Linux Performance Tools: CPU and Memory |
| | | Section 3.3. Chapter Summary |
| | Chapter 4. Performance Tools: Process-Specific CPU |
| | | Section 4.1. Process Performance Statistics |
| | | Section 4.2. The Tools |
| | | Section 4.3. Chapter Summary |
| | Chapter 5. Performance Tools: Process-Specific Memory |
| | | Section 5.1. Linux Memory Subsystem |
| | | Section 5.2. Memory Performance Tools |
| | | Section 5.3. Chapter Summary |
| | Chapter 6. Performance Tools: Disk I/O |
| | | Section 6.1. Introduction to Disk I/O |
| | | Section 6.2. Disk I/O Performance Tools |
| | | Section 6.3. What's Missing? |
| | | Section 6.4. Chapter Summary |
| | Chapter 7. Performance Tools: Network |
| | | Section 7.1. Introduction to Network I/O |
| | | Section 7.2. Network Performance Tools |
| | | Section 7.3. Chapter Summary |
| | Chapter 8. Utility Tools: Performance Tool Helpers |
| | | Section 8.1. Performance Tool Helpers |
| | | Section 8.2. Tools |
| | | Section 8.3. Chapter Summary |
| | Chapter 9. Using Performance Tools to Find Problems |
| | | Section 9.1. Not Always a Silver Bullet |
| | | Section 9.2. Starting the Hunt |
| | | Section 9.3. Optimizing an Application |
| | | Section 9.4. Optimizing a System |
| | | Section 9.5. Optimizing Process CPU Usage |
| | | Section 9.6. Optimizing Memory Usage |
| | | Section 9.7. Optimizing Disk I/O Usage |
| | | Section 9.8. Optimizing Network I/O Usage |
| | | Section 9.9. The End |
| | | Section 9.10. Chapter Summary |
| | Chapter 10. Performance Hunt 1: A CPU-Bound Application (GIMP) |
| | | Section 10.1. CPU-Bound Application |
| | | Section 10.2. Identify a Problem |
| | | Section 10.3. Find a Baseline/Set a Goal |
| | | Section 10.4. Configure the Application for the Performance Hunt |
| | | Section 10.5. Install and Configure Performance Tools |
| | | Section 10.6. Run Application and Performance Tools |
| | | Section 10.7. Analyze the Results |
| | | Section 10.8. Jump to the Web |
| | | Section 10.9. Increase the Image Cache |
| | | Section 10.10. Hitting a (Tiled) Wall |
| | | Section 10.11. Solving the Problem |
| | | Section 10.12. Verify Correctness? |
| | | Section 10.13. Next Steps |
| | | Section 10.14. Chapter Summary |
| | Chapter 11. Performance Hunt 2: A Latency-Sensitive Application (nautilus) |
| | | Section 11.1. A Latency-Sensitive Application |
| | | Section 11.2. Identify a Problem |
| | | Section 11.3. Find a Baseline/Set a Goal |
| | | Section 11.4. Configure the Application for the Performance Hunt |
| | | Section 11.5. Install and Configure Performance Tools |
| | | Section 11.6. Run Application and Performance Tools |
| | | Section 11.7. Compile and Examine the Source |
| | | Section 11.8. Using gdb to Generate Call Traces |
| | | Section 11.9. Finding the Time Differences |
| | | Section 11.10. Trying a Possible Solution |
| | | Section 11.11. Chapter Summary |
| | Chapter 12. Performance Hunt 3: The System-Wide Slowdown (prelink) |
| | | Section 12.1. Investigating a System-Wide Slowdown |
| | | Section 12.2. Identify a Problem |
| | | Section 12.3. Find a Baseline/Set a Goal |
| | | Section 12.4. Configure the Application for the Performance Hunt |
| | | Section 12.5. Install and Configure Performance Tools |
| | | Section 12.6. Run Application and Performance Tools |
| | | Section 12.7. Simulating a Solution |
| | | Section 12.8. Reporting the Problem |
| | | Section 12.9. Testing the Solution |
| | | Section 12.10. Chapter Summary |
| | Chapter 13. Performance Tools: What's Next? |
| | | Section 13.1. The State of Linux Tools |
| | | Section 13.2. What Tools Does Linux Still Need? |
| | | Section 13.3. Performance Tuning on Linux |
| | | Section 13.4. Chapter Summary |
| | Appendix A. Performance Tool Locations |
| | Appendix B. Installing oprofile |
| | | B.1 Fedora Core 2 (FC2) |
| | | B.2 Enterprise Linux 3 (EL3) |
| | | B.3 SUSE 9.1 |
| | Index |