This is the most complete book available on performance optimization--featuring coverage of UNIX, networking (TCP/IP), hardware architecture, and program optimization--all in one volume. Covers performance basics; understanding UNIX; BSD instrumentation; System V instrumentation; system tuning; optimizing user programs written in high-level languages; and making accurate measurements. Explains in detail the output from each command--along with "real-life" rules of thumb on what value is "good" and what is not. For System Administrators, application programmers, MIS managers, and general users of UNIX systems who are interested in learning about and/or optimizing the performance of their UNIX system and networks.
In this comprehensive guide that details "behind the scenes" tuning secrets and explains many previously undocumented features, there are real-world performance examples that illustrate how widely available tools can be used to troubleshoot and tune an NFS environment.
The Complete Guide to Optimizing Systems Performance Written by the winner of the 2013 LISA Award for Outstanding Achievement in System Administration Large-scale enterprise, cloud, and virtualized computing systems have introduced serious performance challenges. Now, internationally renowned performance expert Brendan Gregg has brought together proven methodologies, tools, and metrics for analyzing and tuning even the most complex environments. Systems Performance: Enterprise and the Cloud focuses on Linux(R) and Unix(R) performance, while illuminating performance issues that are relevant to all operating systems. You'll gain deep insight into how systems work and perform, and learn methodologies for analyzing and improving system and application performance. Gregg presents examples from bare-metal systems and virtualized cloud tenants running Linux-based Ubuntu(R), Fedora(R), CentOS, and the illumos-based Joyent(R) SmartOS(TM) and OmniTI OmniOS(R). He systematically covers modern systems performance, including the "traditional" analysis of CPUs, memory, disks, and networks, and new areas including cloud computing and dynamic tracing. This book also helps you identify and fix the "unknown unknowns" of complex performance: bottlenecks that emerge from elements and interactions you were not aware of. The text concludes with a detailed case study, showing how a real cloud customer issue was analyzed from start to finish. Coverage includes - Modern performance analysis and tuning: terminology, concepts, models, methods, and techniques - Dynamic tracing techniques and tools, including examples of DTrace, SystemTap, and perf - Kernel internals: uncovering what the OS is doing - Using system observability tools, interfaces, and frameworks - Understanding and monitoring application performance - Optimizing CPUs: processors, cores, hardware threads, caches, interconnects, and kernel scheduling - Memory optimization: virtual memory, paging, swapping, memory architectures, busses, address spaces, and allocators - File system I/O, including caching - Storage devices/controllers, disk I/O workloads, RAID, and kernel I/O - Network-related performance issues: protocols, sockets, interfaces, and physical connections - Performance implications of OS and hardware-based virtualization, and new issues encountered with cloud computing - Benchmarking: getting accurate results and avoiding common mistakes This guide is indispensable for anyone who operates enterprise or cloud environments: system, network, database, and web admins; developers; and other professionals. For students and others new to optimization, it also provides exercises reflecting Gregg's extensive instructional experience.
The hands-on guide to high-performance coding and algorithm optimization. This hands-on guide to software optimization introduces state-of-the-art solutions for every key aspect of software performance - both code-based and algorithm-based. Two leading HP software performance experts offer comparative optimization strategies for RISC and for the new Explicitly Parallel Instruction Computing (EPIC) design used in Intel IA-64 processors. Using many practical examples, they offer specific techniques for: Predicting and measuring performance - and identifying your best optimization opportunities Storage optimization: cache, system memory, virtual memory, and I/0 Parallel processing: distributed-memory and shared-memory (SMP and ccNUMA) Compilers and loop optimization Enhancing parallelism: compiler directives, threads, and message passing Mathematical libraries and algorithms Whether you're a developer, ISV, or technical researcher, if you need to optimize high-performance software on today's leading processors, one book delivers the advanced techniques and code examples you need: Software Optimization for High Performance Computing.
Introduction to system performance; Monitoring system activity; Managing the workload; Memory performance; Disk performance issues; Network performance; Terminal performance; Kernel configuration.
Presents an ideal mix of theory and practice, which allows the reader to understand the principle behind the application.; Coverage of performance tuning of datawarehouses offers readers the principles and tools they need to handle large reporting databases.; Material can also be used in a non-Oracle environment; Highly experienced author.
A comprehensive guide to performance design planning for cleint-network-server systems using Oracle, this book contains some dynamite applications design tips that can reduce network and server traffic dramatically. The CD-ROM contains various tuning and performance measurement utilities provided by the author and third-party developers.
Systems Performance, Second Edition, covers concepts, strategy, tools, and tuning for operating systems and applications, using Linux-based operating systems as the primary example. A deep understanding of these tools and techniques is critical for developers today. Implementing the strategies described in this thoroughly revised and updated edition can lead to a better end-user experience and lower costs, especially for cloud computing environments that charge by the OS instance. Systems performance expert and best-selling author Brendan Gregg summarizes relevant operating system, hardware, and application theory to quickly get professionals up to speed even if they have never analyzed performance before. Gregg then provides in-depth explanations of the latest tools and techniques, including extended BPF, and shows how to get the most out of cloud, web, and large-scale enterprise systems. Key topics covered include Hardware, kernel, and application internals, and how they perform Methodologies for rapid performance analysis of complex systems Optimizing CPU, memory, file system, disk, and networking usage Sophisticated profiling and tracing with perf, Ftrace, and BPF (BCC and bpftrace) Performance challenges associated with cloud computing hypervisors Benchmarking more effectively Featuring up-to-date coverage of Linux operating systems and environments, Systems Performance, Second Edition, also addresses issues that apply to any computer system. The book will be a go-to reference for many years to come and, like the first edition, required reading at leading tech companies. Register your book for convenient access to downloads, updates, and/or corrections as they become available. See inside book for details.
This IBM® Redbooks® publication provides advice and technical information about optimizing and tuning application code to run on systems that are based on the IBM POWER7® and POWER7+TM processors. This advice is drawn from application optimization efforts across many different types of code that runs under the IBM AIX® and Linux operating systems, focusing on the more pervasive performance opportunities that are identified, and how to capitalize on them. The technical information was developed by a set of domain experts at IBM. The focus of this book is to gather the right technical information, and lay out simple guidance for optimizing code performance on the IBM POWER7 and POWER7+ systems that run the AIX or Linux operating systems. This book contains a large amount of straightforward performance optimization that can be performed with minimal effort and without previous experience or in-depth knowledge. This optimization work can: Improve the performance of the application that is being optimized for the POWER7 system Carry over improvements to systems that are based on related processor chips Improve performance on other platforms The audience of this book is those personnel who are responsible for performing migration and implementation activities on IBM POWER7-based servers, which includes system administrators, system architects, network administrators, information architects, and database administrators (DBAs).