系统架构设计师【第2章】: 计算机系统基础知识 (核心总结)-2.9系统性能

时间:2024-06-02 07:41:27

系统性能是一个系统提供给用户的所有性能指标的集合。它既包括硬件性能(如处理器主频、存储器容量、通信带宽等)和软件性能(如上下文切换、延迟、执行时间等),也包括部件性能指标和综合性能指标。系统性能包含性能指标、性能计算、性能设计和性能评估4个方面 的内容。

2.9.1 性能指标

性能指标是软、硬件的性能指标的集成。在硬件中,包括计算机、各种通信交换设备、各类网络设备等; 在软件中,包括操作系统、数据库、网络协议以及应用程序等。

1.计算机的性能指标
评价计算机的主要性能指标有 时钟频率(主频)、运算速度、运算精度、内存的存储容量、存储器的存取周期、数据处理速率 (Processing Data Rate,PDR)、 吞吐率、各种响应时间、各种利用率、 RASIS特性(即可靠性 (Reliability)、 可用性 (Availability)、 可维护性(Serviceability)、 完整性和安全性 (Integrity and Security))、 平均故障响应时间、兼容性、可扩充性和性能价格比。

2.路由器的性能指标
评价路由器的主要性能指标有设备吞吐量、端口吞吐量、全双工线速转发能力、背靠背帧 数、路由表能力、背板能力、丢包率时延时延抖动、 VPN支持能力、内部时钟精度、队列管理机制、端口硬件队列数、分类业务带宽保证、 RSVP、IP DiffServ、CAR支持、冗余、热插 拔组件、路由器冗余协议、网管、基于 Web 的管理、网管类型、带外网管支持、网管粒度、计费能力/协议、分组语音支持方式、协议支持、语音压缩能力、端口密度、信令支持。

3.交换机的性能指标
评价交换机所依据的性能指标有 端口速率、背板吞吐量、缓冲区大小、MAC 地址表大小 等。

4.网络的性能指标
评价网络的性能指标有 设备级性能指标、网络级性能指标、应用级性能指标、用户级性能指标和吞吐量

5.操作系统的性能指标
评价操作系统的性能指标有 系统上下文切换、系统响应时间、系统的吞吐率(量)、系统资 源利用率、可靠性和可移植性

6.数据库管理系统的性能指标
衡量数据库管理系统的主要性能指标有 最大并发事务处理能力、负载均衡能力、最大连接数等。

7.Web 服务器的性能指标
评 价 Web 服务器的主要性能指标有 最大并发连接数、响应延迟和吞吐量

2.9.2 性能计算

性能指标计算的主要方法有定义法、公式法、程序检测法和仪器检测法。
(1)每秒百万次指令数(Millions of Instructions Per Second,MIPS)

MIPS = 指令条数/(执行时间× 1 0 6 10^6 106 )

(2) 峰值计算,是指计算机每秒钟能完成的浮点计算最大次数。包括理论浮点峰值和实测浮
点峰值。

理论浮点峰值 = CPU 主频×CPU 每个时钟周期执行浮点运算的次数×系统中 CPU 数

(3) 等效指令速度法或吉普森(Gibson)法,早期用加法指令的运算速度来衡量计算机的速度,后来发展为各个指令的运算时间乘以占比。通常加、减法指令占 50%,乘法指令占 15%,除
法指令占 5%,程序控制指令占 15%,其他指令占 15%。

等效指令时间 T = ∑ i = 1 n W i ∗ T i \sum_{i=1}^{n}{W_i * T_i} i=1nWiTi
其中: Wi 为第 i 种指令的使用占比;Ti 为第 i 种指令的运算时间。

2.9.3 性能设计

1.性能调整
性能调整由查找和消除瓶颈组成。对于数据库系统,性能调整主要包括 CPU/内存使用状况、 优化数据库设计、优化数据库管理以及进程/线程状态、硬盘 I/O 及剩余空间、日志文件大小 等。

对于应用系统,性能调整主要包括 应用系统的可用性、响应时间、并发用户数以及特定应用的系统资源占用 等。

2.阿姆达尔解决方案
阿姆达尔(Amdahl)定律定义了采用特定部件所取得的加速比。假定人们使用某种增强部件,计算机 的性能就会得到提高,加速比定义如下:

加速比= 不使用增强部件时完成整个任务的时间/使用增强部件时完成整个任务的时间
新的执行时间 = 原来的执行时间×[(1−增强比例)+增强比例/增强加速比]
总加速比 = 原来的执行时间/新的执行时间 = 1/[(1−增强比例)+增强比例/增强加速比]

加速比主要取决于两个因素:在原有的计算机上,能被改进并增强的部分在总执行时间中所占 的比例,这个值称为增强比例,它永远小于等于 1;通过增强的执行方式所取得的改进,即如果整 个程序使用了增强的执行方式,那么这个任务的执行速度会有多少提高,这个值是在原来条件下程 序的执行时间与使用增强功能后程序的执行时间之比。

2.9.4 性能评估

性能评估是为了一个目的,按照一定的步骤,选用一定的度量项目,通过建模和实验,对 一个系统的性能进行各项检测,对测试结果做出解释,并形成一份文档的技术。性能评估的一 个目的是为性能的优化提供参考。

1.基准测试程序
基准测试程序(Benchmark)定义:应用程序中用得最多、最频繁的那部分核心程序。 基准测试程序中,评测的准确程度依次递减: 真实的程序、核心程序、小型基准程序和合成基准程序。基准测试程序有整数测试程序 Dhrystone、浮点测试程序 Linpack、Whetstone 基准测试程 序、SPEC 基准测试程序和 TPC 基准程序。

2.Web 服务器的性能评估
Web 服务器的性能评测方法有 基准性能测试、压力测试和可靠性测试

3.系统监视
系统监视的方法通常有 系统内置命令、查阅系统日志、可视化技术 3 种方式。