vdbench设置多进程时,对maxdata的影响

本文探讨了在vdbench中使用多进程时,maxdata参数如何影响程序执行。实验结果显示,vdbench会在所有JVMs完成总共10GB的数据读写后结束,而非每个JVM单独完成maxdata大小。通过调整jvms数量,可以更充分地测试硬盘性能,避免单进程限制。当单进程IOPS超过100,000时,建议调整jvm数量,但实际操作未出现警告。" 124911522,7056182,Win10引导区修复:固态硬盘系统无机械硬盘启动问题,"['Windows', '系统修复', '引导修复', '硬盘管理']
摘要由CSDN通过智能技术生成

有时候为了测量硬盘IO的极限性能。我们会开启多进程的方式,如fio中的numjobs。vdbench中也有类似的参数,经查阅手册发现,设置vdbench的配置文件中jvms=nn即可。

这时候有了一个疑问,如果设运行时间elapsed非常大。maxdata=10G,那么整个程序是跑完40G才结束,还是一起跑完10G就结束了呢?在fio中是跑完40G才会结束。而在vdbench中,经过实验,发现其是JVMs一共跑完10G结束。即vdbench一共需要读写maxdata大的数据,而不是 jvms × maxdata的数据。


实验步骤

  1. 准备一个配置文件, 4k-read-16-jvms4.txt。文件内容如下:
hd=default,vdbench=/root/vdbench50406,user=root,jvms=4
sd=sd1,lun=/dev/sdb,openflags=o_direct,threads=16
wd=wd1,sd=sd*,rdpct=100,seekpct=100,xfersize=4k
rd=rd1,wd=wd1,iorate=max,elapsed=600,format=restart,maxdata=10G,interval=5,warmup=30

Note:配置文件中jvms=4前面,user=root后面,不能加空格哦,否则只能开启一个进程。
2. 调用cat /proc/diskstats,查看/dev/sdb读了多少次。

[root@node1 nvme_test]# cat /proc/diskstats
  11       0 sr0 0 0 0 0 0 0 0 0 0 0 0
   8      16 sdb 20297933 51 162388576 28350597 0 0 0 0 0 1805030 28338667
   8       0 sda 8759 48 632577 49030 19552 2755 305227 47172 0 28043 96051
   8       1 sda1 2032 0 52020 2398 34 0 4216 115 0 1023 2509
   8       2 sda2 6696 48 577213 46422 19518 2755 301011 47057 0 27585 93329
 253       0 dm-0 6851 0 568037 49260 22274 0 301011 57464 0 27542 106724
 253       1 dm-1 90 0 4920 421 0 0 0 0 0 338 421

可以看出sdb目前已经读了20297933次。

  1. 接下来检测jvms=4的情况,即运行4k-read-16-jvms4.txt这个配置文件。看看多线程时的情况。
[root@node1 nvme_test]# ../vdbench50406/vdbench -f 4k-read-16-jvms4.txt -o 4k-read-16-jvms4


Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
Vdbench distribution: vdbench50406 Wed July 20 15:49:52 MDT 2016
For documentation, see 'vdbench.pdf'.

10:09:02.320 input argument scanned: '-f4k-read-16-jvms4.txt'
10:09:02.321 input argument scanned: '-o4k-read-16-jvms4'
10:09:02.505 Starting slave: /root/vdbench50406/vdbench SlaveJvm -m localhost -n localhost-10-220826-10.09.02.273 -l localhost-0 -p 5570
10:09:02.525 Starting slave: /root/vdbench50406/vdbench SlaveJvm -m localhost -n localhost-11-220826-10.09.02.273 -l localhost-1 -p 5570
10:09:02.546 Starting slave: /root/vdbench50406/vdbench SlaveJvm -m localhost -n localhost-12-220826-10.09.02.273 -l localhost-2 -p 5570
10:09:02.567 Starting slave: /root/vdbench50406/vdbench SlaveJvm -m localhost -n localhost-13-220826-10.09.02.273 -l localhost-3 -p 5570
10:09:03.094 All slaves are now connected
10:09:04.002 Starting RD=rd1; I/O rate: Uncontrolled MAX; elapsed=600 warmup=30; For loops: None

八月 26, 2022  interval        i/o   MB/sec   bytes   read     resp     read    write     resp     resp queue  cpu%  cpu%
                             rate  1024**2     i/o    pct     time     resp     resp      max   stddev depth sys+u   sys
10:09:09.065         1    8320.20    32.50    4096 100.00    1.763    1.763    0.000   17.332    1.210  14.7   6.2   2.0
10:09:14.049         2    8631.40    33.72    4096 100.00    1.839    1.839    0.000   20.747    1.191  15.9   2.7   1.6
10:09:19.072         3    9101.80    35.55    4096 100.00    1.752    1.752    0.000   13.134    1.058  15.9   2.3   1.6
10:09:24.054         4    8642.20    33.76    <
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值