zoukankan      html  css  js  c++  java
  • 性能测试

    Calculating IO's Per Second
    每个I/O请求到磁盘都需要若干时间.主要是因为磁盘的盘边必须旋转,机头必须寻道.磁盘的旋转常常被称为"rotational delay"(RD),机头的移动称为"disk seek"(DS).
    一个I/O请求所需的时间计算就是DS加上RD.磁盘的RD 基于设备自身RPM 单位值(译注:RPM 是Revolutions Perminute的缩写,是转/每分钟,代表了硬盘的转速).一个RD 就是一个盘片旋转的半圆.

    如何计算一个10K RPM设备的RD 值呢:
    1, 10000 RPM / 60 seconds (10000/60 = 166 RPS)
    2, 转换为 166分之1 的值(1/166 = 0.006 seconds/Rotation)
    3, 单位转换为毫秒(6 MS/Rotation)
    4, 旋转半圆的时间(6/2 = 3MS) 也就是 RD
    5, 加上平均3 MS 的寻道时间 (3MS + 3MS = 6MS)
    6, 加上2MS 的延迟(6MS + 2MS = 8MS)
    7, 1000 MS / 8 MS (1000/8 = 125 IOPS)

    每次应用程序产生一个I/O,在10K RPM磁盘上都要花费平均 8MS.在这个固定时间里,磁盘将尽可能且有效率在进行读写磁盘.IOPS 可以计算出大致的I/O 请求数,10K RPM 磁盘有能力提供120-150 次IOPS.评估IOPS 的效能,可用每秒读写I/O 字节数除以每秒读写IOPS 数得出.

    SEAGATE ST3600057SS (15000rpm/16MB/SAS2)
    4 raid0

    读测试

    time dd if=/dev/sda2 of=/dev/null bs=8k count=1000000
    8k 1000000 = 8G
    16k 1000000 = 16G
    64k 100000 = 6.4G
    128k 100000 = 12.8G
    128k 100000 = 25.6G
    
    result:
    1000000+0 records in
    1000000+0 records out
    8192000000 bytes (8.2 GB) copied, 10.2547 s, 799 MB/s
    

    写测试

    time dd if=/dev/zero of=/opt/iotest bs=8k count=1000000
    8k 1000000 = 8G
    16k 1000000 = 16G
    64k 100000 = 6.4G
    128k 100000 = 12.8G
    128k 100000 = 25.6G
    
    result:
    1000000+0 records in
    1000000+0 records out
    8192000000 bytes (8.2 GB) copied, 40.8447 s, 201 MB/s
    
  • 相关阅读:
    Mac OS 下包管理器 homebrew的安装
    草根程序员八年百万年薪之路
    div隐藏滚动条,仍可滚动
    感觉身体被掏空by彩虹室内合唱团
    添加bash命令
    mysql性能优化
    PHP变量存储结构
    轻量级MVC框架(自行开发)
    一致性hash算法之php实现
    redis安装
  • 原文地址:https://www.cnblogs.com/liujitao79/p/4065127.html
Copyright © 2011-2022 走看看