Synopses & Reviews
“As practical as a Swiss Army knife for a power-hungry SysAdmin. For all the Sun gurus, veterans and newbies: This is for you. As a must-have in one's library, it'll be one of your most worn out references in your serious IT career. It is practical and very illustrative in its approach to solving sample problems.” —Dexter D. Laggui
Hailed in its first edition as an indispensable reference for system administrators, Sun Performance and Tuning has been revised and expanded to cover Solaris 2.6, the newest generation of SPARC hardware, and the latest Internet and Java server technologies.
Featuring a quick guide to get you started, as well as detailed reference information, this book is indispensable both for developers who need to design for speed and administrators who need to manage system and network performance.
Performance guru Adrian Cockcroft brings his unique expertise and structured approach to this complex and rapidly changing topic, providing detailed information on key aspects of performance management and system behavior that is not available anywhere else. Rich Pettit, author of the SE performance toolkit, describes the performance interfaces in Solaris and how to use this freely available toolkit to build your own customized performance-monitoring tools.
Key topics covered include:
- Performance Management and Measurement
- TCP and Internet Server Tuning
- JAVA Network Computer Server Sizing
- SPARC System Architectures
- Kernel Algorithms and Tuning
- How to Build Your Own Performance Tools
- Performance Rules and the virtual_adrian SE Tool
To get up to speed quickly on critical performance issues, this is the one book any Sun administrator, integrator or developer needs.
A reference for developers and administrators who want to maximize the performance of their Sun systems. Revised and updated to cover the latest SPARC and software release (including Solaris 2.6), this text presents a collaboration of configuration and performance information.
About the Author
' ADRIAN COCKCROFT has a physics degree, worked as a software engineer, then joined Sun in the United Kingdom in 1988. He relocated to the U.S. between 1993 and 1996, and now lives in the UK. He tele-works to the U.S. based Enterprise Engineering group as Sun\'s performance management specialist. Since 1995 he has written a monthly Performance Q&A column for SunWorld Online. Contact him at Adrian.Cockcroft@Sun.COM
RICHARD PETTIT is the Chief Performance Architect for Resolute Software, Inc. (http://www.resolute.com). He has been involved in all levels of performance analysis and tuning for 8 of his 14 years of UNIX systems experience. Rich can be reached at email@example.com'
Table of Contents
1. Quick Tips and Recipes.
Quick Reference for Common Tuning Tips. Cold Start Procedure. Configuration and Tuning Recipes.
2. Performance Management.
What Is Performance Management? Performance Management Products. Thoughts on the Future.
3. Performance Measurement.
The Workload. Configuration Changes. Measurement Types and Relationships. Collecting Measurements. Processing and Analyzing the Measurements. Further Reading.
4. Internet Servers.
Introduction to TCP. TCP Transfer Characteristics for Web Servers. Internet Web Server Sizing. Web Server Performance Management. Processing Collected Data. Real-World HTTP Rate Changes over Time. Proxy Web Caching Servers.
5. Java Application Servers.
Java Overview and Terminology. Client/Server Comparisons. Emulating NC-Based Users. Sizing Tests and Results. Overall Sizing Estimates.
6. Source Code Optimization.
Java Tuning. When Does "64 Bits" Mean More Performance? Linker Options and Tuning. UltraSPARC Compiler Tuning.
Tools for Applications. The Effect of Underlying Filesystem Type. Customizing the Execution Environment. Databases and Configurable Applications. Basic Tuning Ideas.
Disk Workloads. Disk Configuration Trade-off. Disk Load Monitoring. Filesystem Tuning. Disk Specifications. IPI Disk Controllers. SCSI Disk Controllers.
New NFS Metrics. New Network Metrics. Virtual IP Addresses. Network Interface Types. Using NFS Effectively. The nfsstat Command. The netstat Command.
Monitoring Processors. Unix on Shared Memory Multiprocessors. Multiprocessor Hardware Configurations. CPU Caches.
11. System Architectures.
SPARC Architecture and Implementation. Register Windows and Different SPARC CPUs. Identifying Different SPARC CPUs. SPARC CPU Cache Architectures. I/O Caches. Block Copy Support. Memory Management Unit Designs. Early SPARC System Architectures. SuperSPARC-Based Multiprocessor Hardware. Bus Architectures Overview. SuperSPARC XDBus Server Architecture. SuperSPARC Server Architectural Overview. UltraSPARC Interconnect Architectures. UltraSPARC System Implementations.
Cache Principles. File Access Caching with Local Disk.
13. RAM and Virtual Memory.
Memory Usage and Sizing Tools. Understanding vmstat and sar Output. Virtual Memory Address Space Segments. The Life Cycle of a Typical Physical Memory Page. Free Memory-The Memory-Go-Round. Kernel Values, Tunables, and Defaults. Swap Space.
14. Kernel Algorithms and Tuning.
Kernel Tuning. Tunable Parameters. SunOS and Solaris Release Overview. Solaris 2.6 Performance Improvements. Parameters Derived frommaxusers. Filesystem Name and Attribute Caching. Measuring the Kernel. Setting Default Limits. Mapping Device Nicknames to Full Names in Solaris 2.
15. Metric Collection Interfaces.
Standards and Implementations. Solaris 2 Native Metric Interfaces. The Traditional Kernel Memory Interface. The Solaris 2 "kstat" Interface. Network Protocol (MIB) Statistics via Streams. The Network Device Driver Interface. Process Data Sources. The TNF Kernel Trace Probes. The RPC Remote Statistics Daemon and perfmeter. System Configuration Information.
16. The SymbEL Example Tools.
Installing and Using SE3.0. System Performance Monitoring with SE. Actions Explained for the Performance Rules. Look Out, There's a Guru About. Features of the SE Language. Example Program Descriptions.
17. The SymbEL Language.
Collection of Performance Data. Basic Structure. Operators and Expressions. Control Flow. Functions, Procedures, and Programming Notes. Structures. Language Classes. User-Defined Classes. Pitfalls. Tricks.
A. Tunables Quick Reference.
Tunable Kernel Parameters.
Internet Resources. Document Descriptions.