zoukankan      html  css  js  c++  java
  • LINUX下测试磁盘性能

    硬件环境:
    IBM 3650 M3 7945o75机架式服务器,主要硬件参数:
    Intel Xeon Processor X5675 6C 3.06GHZ 12MB Cache 1333MHz X 2
    4GB PC3L-10600 CL9 ECC DDR3 1333MHz LP RDIMM X 4
    300GB 10K 6Gbps SAS 2.5″ SFF Slim-HS HDD X 3
    ServeRAID M5015阵列卡 组建RAID5
    软件环境:
    CentOS 5.8 64bit

    dd测试的磁盘性能只是连续IO,所以只能作为理论值来参考。

    简单测试:
    dd if=/dev/zero of=test bs=64k count=16k
    这个很不准确,因为命令结束的时候数据还没真正写到磁盘上;
    dd if=/dev/zero of=test bs=64k count=16k conv=fsync
    这个还算准确,数据已经写入磁盘;
    dd if=/dev/zero of=test bs=64k count=4k oflag=dsync
    这个可以当成是模拟数据库插入操作,所以很慢。

    比较严谨的测试:
    读测试
    time dd if=/dev/sda1 of=/dev/null bs=8k count=8388608
    结果如下:
    8388608+0 records in
    8388608+0 records out
    68719476736 bytes (69 GB) copied, 221.005 seconds, 311 MB/s
    real    3m41.006s
    user    0m2.212s
    sys     0m35.851s
    说明:因为/dev/sda1是一个物理分区,对它的读取会产生IO,/dev/null是伪设备,相当于黑洞,of到该设备不会产生IO,所以,这个命令相当于测试磁盘的读能力。

    写测试
    time dd if=/dev/zero of=/data/iotest bs=8k count=8388608
    结果如下:
    8388608+0 records in
    8388608+0 records out
    68719476736 bytes (69 GB) copied, 383.778 seconds, 179 MB/s
    real    6m36.327s
    user    0m2.524s
    sys     1m38.902s
    说明:该命令需要先新建一个空文件,本命令中是/data/iotest。因为/dev/zero是一个伪设备,它只产生空字符流,对它不会产生IO,所 以,IO都会集中在of文件中,of文件只用于写,所以这个命令相当于测试磁盘的写能力。注意:请根据磁盘剩余空间大小确认count参数。

    读写测试
    time dd if=/dev/sda1 f=/data/iotest bs=8k count=8000000
    结果如下:
    8000000+0 records in
    8000000+0 records out
    68719476736 bytes (69 GB) copied, 683.216 seconds, 95.9 MB/s
    real    12m11.475s
    user    0m2.615s
    sys     2m4.311s
    说明:同时测试磁盘的读写能力。注意:请根据磁盘剩余空间大小确认count参数。

  • 相关阅读:
    Yii框架(一)
    phpStorm中使用xdebug断点调试php代码
    在mysql存储过程中拼接sql解决in的字段类型不匹配问题
    openjdk源码阅读导航
    深入理解tomcat9---源码构建
    API权限控制与安全管理
    java虚拟机性能监控调优及原则
    java十年技术栈[总结复习用]
    spring boot配置文件application.propertis
    php危险的函数和类 disable_functions/class
  • 原文地址:https://www.cnblogs.com/rooney/p/2542982.html
Copyright © 2011-2022 走看看