System Performance
性能之巅:洞悉系统、企业与云计算
- Time Scale : 时间比例
- Perspectives : 视角
- Saturation : 饱和度。The degree to which more work is requested of a resource than it can process is saturation.Saturation begins to occur at 100% utilization (capacity-based), as extra work cannot be processed and begins to queue.
- Drill-down analysis : 深入分析
- Baseline statistics : 基线统计
- Micro benchmarking : 微基准
- Capacity planning : 容量规划
- Observability tools : 可观测性工具
- Performance Evaluation Activity : Analytical Modeling, Observability of a production system (Measurement), Experimental testing (Simulation)
- Trap : 缺陷
- When a function is called, the current set of CPU registers (which store the state of the CPU) is saved to the stack, and a new stack frame is added to the top for the current execution of the thread. Functions end execution by calling a 'return' CPU instruction, which removes the current stack and returns execution to the previous one, restoring its state.
- The kernel also responds to service requests from devices. These are called interrupts, as they interrupt current execution.
- LVM (Logical Volume Manager) : 逻辑卷
- Profiling can determine which code paths are consuming CPU and for how long
- flame graph : 火焰图
- Stack Trace : 堆栈轨迹
- sampling Java on-CPU stacks with DTrace jstack():
dtrace -n 'profile-97 /pid == 1742/ { @[jstack(100)] = count(); }'
- The number of software threads that are queued and ready to run is an important performance metric indicating CPU saturation.
- CPI: Cycle Per Instruction metrics
- stall cycle(停顿周期) while waiting on memory access
- CPU 字长(Word Size) : 电脑技术中对CPU在单位时间内(同一时间)能一次处理的二进制数的位数叫字长。所以能处理字长为8位数据的CPU通常就叫8位的CPU。同理32位的CPU就能在单位时间内处理字长为32位的二进制数据。字节和字长的区别:由于常用的英文字符用8位二进制就可以表示,所以通常就将8位称为一个字节。字长的长度是不固定的,对于不同的CPU、字长的长度也不一样。8位的CPU一次只能处理一个字节,而32位的CPU一次就能处理4个字节,同理字长为64位的CPU一次可以处理8个字节。
硬件资源 | 类型 | 度量 |
---|---|---|
CPU | utilization | CPU利用率(TOP查看到的结果), 可以理解为1秒内繁忙时间的比例 |
CPU | saturation | 可以认为是可运行队列的长度 |
内存 | utilization | 2:4 |
内存 | saturation | 2:5 |
网卡 | utilization | 2:6 |
存储设备I/O | utilization | 2:7 |
存储设备I/O | saturation | 2:8 |
存储设备I/O | errors | 2:8 |
软件资源 | 类型 | 度量 |
---|---|---|
互斥锁 | utilization | 2:2 |
互斥锁 | saturation | 2:3 |
线程池 | utilization | 2:4 |
线程池 | saturation | 2:5 |
进程/线程容量 | utilization | 2:6 |
进程/线程容量 | saturation | 2:7 |
进程/线程容量 | errors | 2:8 |
文件描述符容量 | utilization | 2:9 |
文件描述符容量 | saturation | 2:10 |
文件描述符容量 | errors | 2:11 |