Escolar Documentos
Profissional Documentos
Cultura Documentos
Performance on AIX
Contents
Objectives Performance Definition Performance Components Tools for Performance Evaluation Performance Tuning Methodology
Objectives
Define performance Explain performance metrics List of tools available for analysis and tuning Describe a plan of action for performance problem solving
Defining System Performance The productivity of a computer system and its users depends on the performance of the system Performance is dependent on a combination of throughput and response time.
Throughput Response time Acceptable performance
Memory resources
RAM speed, amount of RAM, virtual memory manager performance
I/O resources
Disk latencies, number of disks, I/O adapters Device driver and kernel performance
Network resources
Network adapter performance, network itself Software performance of network applications
Processor Performance
CPU clock speed expressed as megahertz (MHz)
1MHz is one million CPU cycles per second CPU cycle is the interval needed to perform an operation
An instruction is a language construction that specifies an operation and identifies its operands CPU Execution time = Number of Cycles per Instruction * Number of Instructions * CPU clock speed High clock speeds are just a part of CPU performance; CPU architecture and system design can make big differences in the performance of a system
Memory Hierarchy
Instructions and associated data targeted for the CPU comes from some type of memory. Memory has several layers with each layer becoming more expensive and scarcer. Registers are at the top layer - high speed storage cells inside the CPU. Caches - high-speed memory containing a subset of main memory. There are different levels of caches - fastest levels (and more expensive) being at the top. (7-10 CPU Cycles) Real memory (RAM) is the most familiar memory level. (2050 CPU Cycles) Disk storage is also a type of memory - persistent memory. (hundreds of thousands CPU Cycles)
Performance Tuning Process Identify workloads Define and prioritize goals Identify the required resources Minimize resource requirements:
Use the appropriate resources Structure for parallel resource usage
Performance Metrics
We measure performance through the use of analysis tools. Metrics that we measure include CPU utilization, memory paging, disk I/O, network I/O. Each metric can be subdivided into finer details.
CPU utilization can be split into %user, %system, %idle, % I/Owait. Other CPU metrics can include the length of the run queues, process/thread dispatches, interrupts, lock contention statistics. Memory metrics include virtual memory paging statistics, file paging statistics, cache and TLB miss rates. Disk I/O metrics include kilobytes read/written, transactions per second, elapsed time for I/O to complete Network metrics include kilobytes transferred per second, transmission statistics, network memory utilization, and much more.
10
11
System Attributes
12
Summary
Performance is more than just tuning Benchmarks are useful indicators of performance A better understanding of how the system works leads to better performance management decisions Performance Analysis and Tuning Tools
13