---
title: 系统资源与性能——I/O-官方技术文章-鲲鹏社区
description: 介绍I/O性能分析方法
keywords: 系统资源与性能,官方技术文章,鲲鹏社区,基本概念,常用,性能分析工具,详细显示磁盘信息,KB
url: https://www.hikunpeng.com/developer/techArticles/20251209-19?envFlag=1
section: (其他)
---

# 系统资源与性能——I/O-官方技术文章-鲲鹏社区

URL: https://www.hikunpeng.com/developer/techArticles/20251209-19?envFlag=1
描述: 介绍I/O性能分析方法
关键词: 系统资源与性能,官方技术文章,鲲鹏社区,基本概念,常用,性能分析工具,详细显示磁盘信息,KB

官方技术文章 [了解详情](https://www.hikunpeng.com/zh/developer/techArticles)

系统资源与性能——I/O

系统资源与性能——I/O

openEuler

发表于 2025/12/09

0

### 基本概念

I/O表示输入（Input）/输出（Output），输入指系统接收信号或数据的操作，输出指从系统发出信号或数据的操作。对于CPU 和主存储器的组合，任何信息传入或传出 CPU/内存组合，就会被认为是 I/O。

### 常用I/O性能分析工具

- iostat：可以汇报所有在线磁盘的统计信息。例如：# 详细显示磁盘信息，以KB为单位显示，以100秒为周期统计（命令本身不会主动停止，需要执行Ctrl+C手动停止）

```
# 详细显示磁盘信息，以KB为单位显示，以100秒为周期统计（命令本身不会主动停止，需要执行Ctrl+C手动停止）
iostat -d -k -x 100

# 详细显示磁盘信息，以KB为单位显示，以1秒为周期统计，总共统计100s
iostat -d -k -x 1 100
```

在命令的输出信息中，各字段所代表的含义如下：

| 字段 | 含义 |
| --- | ---|
| Device | 监测设备名称。 |
| r/s | 设备每秒完成的读取请求数（合并后）。 |
| rKB/s | 每秒从磁盘读取KB数。 |
| rrqm/s | 每秒合并放入请求队列的读操作数。 |
| %rrqm | 读取请求在到设备之前合并在一起的百分比。 |
| r_await | 每个读请求耗费的平均时间。 |
| rareq-sz | 向设备发出的读取请求的平均大小（以KB为单位）。 |
| w/s | 设备每秒完成的写入请求数（合并后）。 |
| wKB/s | 每秒写入磁盘KB数。 |
| wrqm/s | 每秒合并放入请求队列的写操作数。 |
| %wrqm | 写入请求在到设备之前合并在一起的百分比。 |
| w_await | 每个写请求耗费的平均时间。 |
| wareq-sz | 向设备发出的写入请求的平均大小（以KB为单位）。 |
| d/s | 设备每秒完成的丢弃请求数。 |
| dKB/s | 每秒为设备丢弃的扇区（KB）数。 |
| drqm/s | 每秒合并到设备排队的丢弃请求数。 |
| %drqm | 丢弃请求在到设备之前合并在一起的百分比。 |
| d_await | 向要服务的设备发出丢弃请求的平均时间。 |
| dareq-sz | 向设备发出的丢弃请求的平均大小（以KB为单位）。 |
| f/s | 设备每秒完成的刷新请求数（合并后）。 |
| f_await | 向要服务的设备发出的刷新请求的平均时间。 |
| aqu-sz | 向设备发出的请求的平均队列长度。 |
| %util | 用于I/O操作时间的百分比，即使用率。 |

- sar：可用于查看系统磁盘的读写性能。

```
# 显示系统所有硬盘设备在采样时间内的使用状态，每3秒统计一次，统计5次
sar -d 3 5
```

在命令的输出信息中，各字段所代表的含义如下：

| 标识 | 含义 |
| --- | ---|
| tps | 每秒向物理设备发出的传输总数。 |
| rKB/s | 每秒从设备读取的KB数。 |
| wKB/s | 每秒写入设备的KB数。 |
| dKB/s | 设备每秒丢弃的KB数。 |
| areq-sz | 向设备发出的I/O请求的平均大小（KB）。 |
| aqu-sz | 向设备发出的请求的平均队列长度。 |
| await | 向要服务的设备发出的I/O请求的平均时间。 |
| %util | 向设备发出I/O请求的已用时间百分比（设备的带宽利用率）。 |

- vmstat

```
# 使用vmstat进行监测，报告磁盘相关统计信息
vmstat -d
```

在命令的输出信息中，各字段所代表的含义如下：

| 字段 | 含义 |
| --- | ---|
| reads | -total：已成功完成的读取总数。-merged：分组读取（导致一次I/O）。-sectors：扇区读取成功。-ms：读取花费的毫秒数。 |
| writes | -total：已成功完成的写入总数。-merged：分组写入（导致一次I/O）。-sectors：写入成功的扇区。-ms：写入所花费的毫秒数。 |
| IO | -cur：正在进行的 I/O 数。-sec：I/O 所花费的秒数。 |
