硬盘性能测试

mkdir test-data
fio –rw=write –ioengine=sync –fdatasync=1 –directory=test-data –size=2200m –bs=2300 –name=mytest

命令分解

mkdir test-data  # 创建测试目录
fio \
  --rw=write      # 测试模式:纯写入
  --ioengine=sync # I/O引擎:同步阻塞写入(模拟最严苛的持久化场景)
  --fdatasync=1   # 每次写入后调用fdatasync(),确保数据刷到磁盘(类似数据库安全写入)
  --directory=test-data  # 测试目录
  --size=2200m    # 每个线程写入总量:2200MB
  --bs=2300       # 块大小:2300字节(模拟非常规小块写入)
  --name=mytest   # 任务名称

关键参数作用

参数意义
--rw=write测试写入性能(非随机写入)。
--ioengine=sync使用同步I/O,每次写操作必须等待磁盘确认完成(性能低但数据安全)。
--fdatasync=1每次写操作后调用 fdatasync(),强制刷新内核缓冲区到磁盘(类似 fsync 但略轻量)。
--bs=2300

–size=2200m
设置非常规块大小(通常用4K/8K),可能是为了模拟特定业务场景的小数据块写入。
总写入量足够大,避免缓存影响测试结果。

典型应用场景

  1. 数据库持久化测试
  • 模拟事务日志(如WAL)的写入性能,因为 sync+fdatasync 是数据库保证ACID的常用配置。
  1. 磁盘可靠性验证
  • 测试磁盘在强制刷盘模式下的实际吞吐和延迟。
  1. 性能调优基准
  • 对比不同文件系统/磁盘设备在小块同步写入时的表现。

输出结果关注点

运行后会显示以下关键指标:

  • IOPS:每秒写入次数(2300字节/次)。
  • 带宽(BW):实际写入吞吐(如 MB/s)。
  • 延迟(lat):每次写入的平均耗时(尤其关注 syncfdatasync 的开销)。
    示例输出片段:
write: IOPS=500, BW=1.12MiB/s (1.17MB/s)
  sync (usec): min=100, max=10000, avg=2000
  fdatasync: 1 calls, total=10ms

注意事项

  1. 磁盘压力:此命令会高负载写入,避免在生产环境直接运行。
  2. 块大小优化bs=2300 可能导致未对齐写入,正常测试建议用 4K 的整数倍。
  3. 对比测试:移除 --fdatasync=1--ioengine=sync 可测试缓存写入性能(速度会快很多)。

智谱最新的模型

GLM-Z1-AirX(极速版):定位国内最快推理模型,推理速度可达 200 tokens / 秒,比常规快 8 倍;

GLM-Z1-Air(高性价比版):价格仅为 DeepSeek-R1 的 1/30,适合高频调用场景;

GLM-Z1-Flash(免费版):支持免费使用,旨在进一步降低模型使用门槛。