前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >测试硬盘速度

测试硬盘速度

作者头像
胡齐
发布2019-10-24 15:21:21
3K0
发布2019-10-24 15:21:21
举报
文章被收录于专栏:运维猫运维猫

上周末两天以及这周末两天要准备上海应用技术大学的专升本考试,非常抱歉了,文章没有及时更新,希望大家一如既往的支持我,我也会发表更有价值的干货的。

1、测试磁盘的读取速度

代码语言:javascript
复制
 [root@docker-01 ~]# yum -y install hdparm
 [root@docker-01 ~]# hdparm -T -t /dev/vda
 
 /dev/vda:
 Timing cached reads:   18802MB in 1.99 seconds =9433.99 MB/sec
 Timing buffered disk reads: 626MB in 3.01 seconds =208.24 MB/sec
 #1.99秒中直接从内存的 cache读取数据的速度读   18802 MB。平均9433.99 MB/sec
 #3.01秒中从硬盘缓存中读   626 MB。seconds = 208.24 MB/sec

注:参数:

-t perform device read timings #不使用预先的数据缓冲, 标示了Linux下没有任何文件系统开销时磁盘可以支持多快的连续数据读取.

-T perform cache read timings #直接从内存的 cache读取数据的速度。实际上显示出被测系统的处理器缓存和内存的吞吐量*.

2、测试磁盘的写入速度

在使用前首先了解两个特殊设备

/dev/null 伪设备,回收站.写该文件不会产生IO开销

/dev/zero 伪设备,会产生空字符流,读该文件不会产生IO开销

测试方法:

2.1测试磁盘的IO写速度

代码语言:javascript
复制
 [root@docker-01 ~]# dd if=/dev/zero of=/test.dbf bs=8k count=3000
 记录了3000+0的读入
 记录了3000+0的写出
 24576000字节(25 MB)已复制,0.0536083 秒,458 MB/秒

注:

可以看到,在0.0536083秒的时间里,生成25M的一个文件,IO写的速度约为458MB/sec;当然这个速度可以多测试几遍取一个平均值,符合概率统计.

2.2执行命令并计时

代码语言:javascript
复制
 [root@docker-01 ~]# time dd if=/dev/zero of=/test.dbf bs=8k count=3000
 记录了3000+0的读入
 记录了3000+0的写出
 24576000字节(25 MB)已复制,0.0283404 秒,867 MB/秒
 
 real0m0.036s
 user0m0.000s
 sys0m0.036s

注:

1.实际时间(real time): 从command命令行开始执行到运行终止的消逝时间;

2.用户CPU时间(user CPU time): 命令执行完成花费的用户CPU时间,即命令在用户态中执行时间总和;

3.系统CPU时间(system CPU time): 命令执行完成花费的系统CPU时间,即命令在核心态中执行时间总和。

其中,用户CPU时间和系统CPU时间之和为CPU时间,即命令占用CPU执行的时间总和。实际时间要大于CPU时间,因为Linux是多任务操作系统,往往在执行一条命令时,系统还要处理其它任务。排队时间没有算在里面。

另一个需要注意的问题是即使每次执行相同命令,但所花费的时间也是不一样,其花费时间是与系统运行相关的。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-10-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 运维猫 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 上周末两天以及这周末两天要准备上海应用技术大学的专升本考试,非常抱歉了,文章没有及时更新,希望大家一如既往的支持我,我也会发表更有价值的干货的。
  • 1、测试磁盘的读取速度
  • 2、测试磁盘的写入速度
    • 2.1测试磁盘的IO写速度
      • 2.2执行命令并计时
      相关产品与服务
      容器服务
      腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档