当前位置: 首页 > 工具软件 > Benchmark > 使用案例 >

Benchmark 第一篇

吴松
2023-12-01

  1. 定义
  2. 目标
  3. 功能
  4. 基准类型
  5. 测试工具
  6. 为什么要基准测试

Benchmark(基准)定义

在计算中,benchmark(基准)是运行一个计算机程序、一组程序或其他操作的行为,以评估一个对象的相对性能,通常是通过对它运行一些标准测试和试验。

基准测试是一种测量和评估软件性能指标的活动,用于建立某个时刻的性能基准,以便当系统发生软硬件变化时,重新进行基准测试以评估变化对性能的影响。

目标

基准测试时有几个目标需要满足。

  1. 一是确保应用程序在响应时间、并发用户数量和任何其他强制要求的 SLA 中指定的性能要求方面满足最低规范。
  2. 二是在升级和更改后重新测试应用程序。
  3. 三是确定应用程序的断点,增加负载和需求,直到断点。

功能

基准测试软件的功能可能包括将性能过程记录/导出到电子表格文件、可视化(例如绘制折线图或彩色编码图块)以及暂停过程以便能够恢复而无需重新开始。软件可以具有特定于其目的的附加功能。

基准类型

  1. 真实程序
    • 文字处理软件
    • CAD工具软件
    • 用户的应用软件(即:MIS)
  2. 组件基准/微基准
    • 核心例程由一段相对较小且特定的代码组成。
    • 测量计算机基本组件的性能[6]
    • 可用于自动检测计算机的硬件参数,如寄存器数量、缓存大小、内存延迟等。
  3. 核心
    • 包含关键代码
    • 通常从实际程序中抽象出来
    • 流行内核:Livermore 循环
    • linpack benchmark(包含用 FORTRAN 语言编写的基本线性代数子程序)
    • 结果以 Mflop/s 表示。
  4. 综合基准
    • 编程合成基准的程序:
      • 从许多应用程序中统计所有类型的操作
      • 获取每个操作的比例
      • 按照上面的比例写程序
    • 综合基准​​的类型有:
  5. I/O 基准测试
  6. 数据库基准
    • 测量数据库管理系统 (DBMS) 的吞吐量和响应时间
  7. 并行基准
    • 用于具有多核和/或处理器的机器,或由多台机器组成的系统

测试工具

测试工具需要模仿用户在现实世界中尝试执行的操作类型,模拟从一到数千的任意数量的并发用户,以便能够满足并超越应用程序的规范。它还需要捕获事务以及测试结果,以便在发现故障时可以追溯到它们的源头。

为什么要基准测试

  1. 验证基于系统的一些假设,确认这些假设是否符合实际情况
  2. 重现系统中的某些异常行为,以解决这些异常
  3. 测试系统当前的运行情况
  4. 模拟比当前系统更高的负载,以找出系统随着压力增加而可能遇到的扩展性瓶颈
  5. 规划未来的业务增长
  6. 测试应用适应可变环境的能力
  7. 测试不同的硬件,软件和操作系统配置
 类似资料: