58,030 瀏覽數

Iometer

Step 1.下載程式
Step 2.安裝 dynamo(SUT-Linux)
Step 3.安裝 Iometer(Controller-Windows)
Step 4.使用 Iometer

Step 5.不同的 Iometer 參數值
Step 6.看 Iometer 結果
Step 7.Pattern

Step 8.Cycle # Outstanding I/Os
Step 9.錯誤訊息
Step 10.Iometer 測試報告

Step 1.下載程式

第一次接觸 IOmeter 可以先參考這一篇 Iometer quick start 
Iometer 主要可以用來測試硬碟 I/O 的速度,透過不同的 pattern 可以模擬出 Server / Storage 真正在被存取時 I/O 的效能. Iometer 是在 1998年2月17日的 IDF(Intel Develpoer Forum) Intel 所提出來的,但是目前已經移轉到 Open Source 來開發,並且 Iometer 已經在 SourceForge.net 註冊 ,所有的程式都可以從 sourceforge 中下載. http://sourceforge.net/projects/iometer/

先來看看 Iometer  的定義是什麼.官方說明文件( http://iometer.cvs.sourceforge.net/viewvc/iometer/iometer/Docs/Iometer.pdf )如下:

  • Iometer: consists of two programs, Iometer and Dynamo.Iometer is the controlling program. Using Iometer’s graphical user interface, you configure the workload, set operating parameters, and start and stop tests. Iometer tells Dynamo what to do, collects the resulting data, and summarizes the results in output files. Only one copy of Iometer should be running at a time; it is typically run on the server machine.
  • Dynamo: is the workload generator. It has no user interface. At Iometer’s command, Dynamo performs I/O operations and records performance information, then returns the data to Iometer. There can be more than one copy of Dynamo running at a time; typically one copy runs on the server machine and one additional copy runs on each client machine.

簡單的來說就是 Iometer 是由 "控制" 以及 "顯示執行結果" 的兩隻程式所組合而成的.其中 "控制" 就是 Dynamo 主要是產生硬碟壓力測試的程式.不管要測試的平台是 Windows 或是 Linux 都要安裝這兩支程式.但是在 Windows 他會一起把這兩個程式一起帶起來.注意觀察一下執行在 windows 平台時除了 Iometer 的顯示畫面外還有一個 command line 的程式也被帶起來.這就是 Dynamo. 

這裡是專為 Linux 平台講解 Iometer 的工作方式,主要在使用 Iometer for Linux 時需要兩支程式.

  1. iometer-2006_07_27.linux.i386-bin.tgz
    dynamo 主要是安裝在 Linux 下的.也是 iometer 主要在跑的程式.
  2. iometer-2006.07.27.win32.i386-setup.exe
    iometer 只要是安裝在 windows 下的,不負責運行只提供操作介面和顯示執行結果.
    Dynamo 有 windows 和 Linux 版本的但是 Iometer 只有 windows 版.所以在 Linux 平台下還需要額外一台 windows 的 iometer 看執行結果.

目前 iometer 的版本 2008 的是 iometer-devel 的版本, 2006 是 iometer-stable 的版本

75 個網友的想法 “Iometer

  1. 您好,請問,
    windows與linux無法連線,
    當我在linux端下"dynamo -i xxx.xxx.xxx.xx -m xxx.x.x.x"指令後,
    linux端會顯示連線成功,
    但是windows端的iometer卻會當掉,
    我下的是相同版本的iometer在各自windows與linux的環境下做連線動作,
    請問該怎麼排除此問題呢? 謝謝。

  2. Hi 你好,最近在Linux下使用Iometer時,已經透過Windows與Linux系統做連結,但是在執行Iometer時卻還是會出現以下的錯誤訊息:
    ERROR: Send failed
    [PortTCP::SynchSend() in c:\ved\development\opensource\jometer\sf.net\2010_q2_tot\src\ioporttcp.cpp line792]
    errno=10053
    error repeats xxxx time(s)
    Iometer一直無法正常執行,請問是什麼問題呢?謝謝!

  3. 自動參照通知: Iometer – 測試網路效能 – Benjr.tw

  4. 自動參照通知: Fio VS Iometer | Benjr.tw

  5. 請問我下載了iometer1.1.0的版本在Ubuntu12.04上,解壓後下了指令

    root@localhost:/home/root# ./dynamo -i 192.168.20.101 -m 192.168.20.100
    Dynamo version 1.1.0, x86-64, built Mar 25 2014 22:08:27

    Command line parameter(s):
    Looking for Iometer on “192.168.56.101″
    Sending login request…
    icosa
    192.168.56.100 (port 47535)

    接著開windows端的iometer,兩邊都能互ping,但確看不到linux上的東西,看了一下windows的synamo如下:

    Number of processors: 4
    Using performance counter frequency: 1.94865MHz.
    Sending login request…
    user-1

    Successful PortTCP::Connect
    – port name: user-1
    ***If dynamo and iometer hangs here……

    發現跟舊的版本有點差別,舊版的windows的dynamo如下:

    Number of processors: 4
    Processor speed: 2MHz.
    Number of processors: 4
    Processor speed: 2MHz.

    Sending login request…
    user-1
    192.168.20.101
    Successful PortTCP::Connect
    – port name: user-1
    ***If dynamo and iometer hangs here……

    接著會跳出"Iometer 2006.07.27 is not compatible with Dynamo(unknow version number)"的視窗,兩版的dynamo有一個差別是在前面一個有出現windows的ip,一個沒有,不知道這有沒有關聯?

  6. 無法編譯我抓下來的檔案
    你好,我去http://old.nabble.com/iometer-2008-06-22-rc1-td18061440.html
    這個網站抓了iometer-2008-06-22-rc2.linux.x86_64bin這個檔案下來,
    當我解開之後,跑到scr的目錄下並沒有看到有關Makefile-Linux.x86_64的檔案,
    然後我在資料夾內的各個資料夾輸入以下指令

    #make -f Makefile dynamo
    or
    #make make
    or
    #make INSTALL
    

    回應則是make: *** No rule to make target `dynamo’. Stop.

    • 事實上我只有在 /Docs/Docbook 的目錄下有看到一個
      makefile的文件,而沒有可以選擇編譯的版本,
      而我在2008-06-28.linux.x86_64-bin的這個檔案裡面
      有發現到三個版本的make(Makefile-Linux24 , Makefile-Linux26 , Makefile-test)文件,
      不過我去做make的時候也是無法編譯,我下的指令是

      #make -f Makefile-Linux26 dynamo

      回應則依然是make: *** No rule to make target `dynamo’. Stop.
      而當我下#make -f Makefile-test dynamo的指令時,
      回應則變成makefail-test:l: *** missing separator. stop
      是我make的用法出了錯嗎?
      是否有其他方式編譯呢? 感激不盡

    • 不好意思,原來是我原先下載的檔案,下載錯檔案了,所以才導致我無法編譯,
      我下載的目錄上有linux是已經編譯好的,而小弟現在已經將dynamo編譯完成了,
      然後去連接window的時候出現了

      以下是小弟copy下來的回應

      [root@localhost src]# ./dynamo -i 100.168.xxx.xxx -m 100.168.xxx.xxx
      Fail to open kstat device file. You can ignore this warning
      unless you are running dynamo on XSCALE CPU.
      
      Command line parameter(s):
      Looking for Iometer on "100.168.xxx.xxx"
      
      Sending login request...
      localhost.localdomain
      100.168.xxx.xxx (port 36448)
      Successful PortTCP::Connect
      - port name: 100.168.xxx.xxx
      

      這樣應該是代表我有連接上了window的iometer才是,可是我window上的iometer卻找不到
      我RHEL這台電腦,然後我使用ctrl+c結束程的時候,window會出現
      GetReceiveResult()failed on dynamo login port!
      請問為什麼會這樣呢? 麻煩大大幫小弟解惑一下,感激不盡

        • 我用linux去ping windows是可以ping得到的,然後我也將windows的防火牆,
          以及linu的selinu還有防火牆關掉,但仍然連不上,畫面依舊到上次回應的那的部份就停止了,
          後來我將iometer的版本改為iometer-2006_07_27.linux.i386-bin 原先使用這個版本會當機
          的狀況消失了,而且可以連上去了,目前還不是很清楚為啥會連得上去,不過我想我會多換幾個
          版本測試看看,非常感激大大這麼仔細的教學,感激不盡

    • I have the same problem. Windows version of 2008.06.22 RC2 version is also OK. Have you post this problem to IOmeter user mailing list?

      • 最近我也遇到相同的問題,在 RHEL 5 32 位元所編繹出來的 dynamo(iometer-2008-06-22-rc) 似乎無法正確來使用.
        但好像也找不到解答.

  7. 版本為2008_06_28的linux以及win
    我使用的版本是一致的,原先使用不一致的原因是我想確認到底有沒有ping到
    我的LINUX,確認有抓到後我是使用同一時期版本的IOMETER,
    file的指令我也下過了,出現的回應是
    dynamo: ELE 64-bit LSB executable, AMD X86-64 , VERSION 1(SYSV), FOR GNU/LINUX2.6.9………..
    所以的確是LINUX的執行檔,
    我想請問一下,是否需要將下載下來的檔案做編譯的動作呢?
    因為我在src的資料夾下有看到makefile-linux2x的檔案,所以做完以上動作的時候,
    我用make去編譯,結果是出現error,是否我的的動作有問題呢? 感激不盡

    • 建議你下載 iometer-2008-06-22-rc2.src.tgz ,再重新編譯 dynamo.
      解開後到目錄 #cd ./iometer-2008-06-22.rc2/src 並執行 #make -f Makefile-Linux.x86_64 dynamo
      其中的 Makefile-Linux.x86_64 起依據自己的作業系統版本來選擇.

      重新編譯的 dynamo 一定可以在你自己的平台上使用.

  8. 你好,我在使用iometer上有遇到問題,想請問一下,
    我今天是在linux底下使用iometer是否需要dynamo就可以了?
    還是說依然要安裝iometer呢?而且iometer是exe檔,要如何安裝在
    linux的系統裡呢?

    應為我想測試的部份只有自己本身這台電腦而已,並沒有想測對外連接
    的數據,所以我想應用上因該只需要使用dynamo來填滿我硬碟的傳送頻寬,
    不知道這樣的想法是否有誤?煩請大大指教

    • IOmeter 官方說明文件如下:
      Iometer consists of two programs, Iometer and Dynamo.
       Iometer is the controlling program. Using Iometer’s graphical user interface, you
      configure the workload, set operating parameters, and start and stop tests. Iometer
      tells Dynamo what to do, collects the resulting data, and summarizes the results in
      output files. Only one copy of Iometer should be running at a time; it is typically
      run on the server machine.
      Dynamo is the workload generator. It has no user interface. At Iometer’s
      command, Dynamo performs I/O operations and records performance information,
      then returns the data to Iometer. There can be more than one copy of Dynamo
      running at a time; typically one copy runs on the server machine and one additional
      copy runs on each client machine.

      簡單的來說就是 Iometer 是控制以及顯示執行結果的程式而 Dynamo 是產生硬碟壓力測試的程式.不管要測試的平台是 Windows 或是 Linux 都要安裝這兩支程式.但是在 Windows 他會一起把這兩個程式一起帶起來.注意觀察一下執行在 windows 平台時除了 Iometer 的顯示畫面外還有一個 command line 的程式也被帶起來.這就是 Dynamo.

      Dynamo 有 windows 和 Linux 版本的但是 Iometer 只有 windows 版.

      所以你還需要額外的一台 windows 的 iometer 看執行結果.

      • XP and RHEL無法連線成功
        非常感謝大大的回答,我另外還有問題想請問,
        我下載了iometer 2006_07_27.linux.i386以及iometer 2006_07_27.win32.i386這兩個iometer
        的程式,然後個別安裝在RHEL跟XP上,然後在RHEL上輸入:
        # ./dynamo -i xxx.xxx.xxx.xxx -m xxx.xxx.xxx.xxx (xxx.xxx.xxx.xxx是我電腦的ip位置,i後面是xp,m後面是RHEL的位置)
        結果當我入完成的時候,我XP上的iometer就當掉了,而且是每次輸入每次程式都會當掉,我原先想是說可能版本老舊有一些bug,所以我換成了
        iometer-2008_06_28.window.32-bin以及iometer-2008_06_28.linux.x86_64-bin這兩個,
        然後依然是在RHEL上輸入:

        # ./dynamo -i xxx.xxx.xxx.xxx -m xxx.xxx.xxx.xxx
        

        可是當我輸入完按下enter的時候,出現了

        bash: ./dynamo: cannot execute binary file

        我想可能是我權限不夠,所以我輸入了:

        chmod +x dynamo

        然後去看 dynamo這個檔案的屬性, -rwxrwxr-x ,所以是可執行檔,
        然後再輸入一次# ./dynamo -i xxx.xxx.xxx.xxx -m xxx.xxx.xxx.xxx
        結果依然是出現 bash: ./dynamo: cannot execute binary file
        我到現在已經將登入者改為 root了,結果還是一樣,
        於是我使用iometer 2006_07_27.linux.i386以及iometer-2008_06_28.window.32-bin搭配
        結果出現版本不相容的問題,所以其實我是有抓到RHEL的,但是卻無法正常連線,
        而新版的iometer卻是無法執行,請問大大是否可以給我一個方向呢?非常感謝

        • iometer 和 dynamo 兩邊的版本要一致.
          先使用指令 #file 檢查 dynamo 檔案是否為 Linux 的執行檔(#file dynamo).

  9. 你好,
    我现在也在用这个Iometer,不过,我的客户端是Windows Xp,也就是Iometer.exe所在的电脑。
    Dynamo.exe我想用于Windows server 2008(VMwareplayer的虚拟环境),我将Windows Xp上生成的Dynamo.exe复制后,
    存到了Windows server 2008的桌面上,但是,我不知道如何启动Dynamo.exe,像在Linux环境下一样启动Dynamo.exe么。
    我试着做了一下,但是没成功,Windows Xp上的Iometer.exe的画面没有任何显示,要不就是Iometer.exe当机。
    您能告诉我该怎么做么。谢谢

    • 建議直接下載 IOmeter windows 版的 iometer-1.1.0-rc1-win32.i386-bin.zip 解開之後,直接執行 IOMETER.EXE 即可在 Windows 系統下啟動 IOMETER.EXE 與 DYNAMO.exe

      • 谢谢您的回复。

        可能是我说的不是很明白。
        我的控制台是Windows XP,客户端是Windows Server 2008 R2 (64bit),也就是说IOMETER.EXE和DYNAMO.exe不在一个电脑内。我该如何用Windows XP的控制台去控制Windows Server 2008 R2 (64bit)的客户端呢。

        • 在你 Windows Server 2008 R2 (64bit)的客户端執行 DYNAMO.exe 這一支程式,在你的控制台 Windows XP 執行 IOMETER.EXE 即可.

  10. ESX虛擬機下,想做磁盤的性能測試,,Linux的 dynamo連接的時候,windows的iometer就會當機。。。

    [root@gmx-cent5-3-64 src]# ./dynamo -i 10.11.130.111 -m localhost
    Fail to open kstat device file. You can ignore this warning
    unless you are running dynamo on XSCALE CPU.
    
    Command line parameter(s):
    Looking for Iometer on \"10.11.130.111\"
    
    Sending login request...
    gmx-cent5-3-64.growserver.jp
    localhost (port 57054)
    Successful PortTCP::Connect
    - port name: 10.11.130.111
    
    *** If dynamo and iometer hangs here, please make sure
    *** you use a correct -m that
    *** can ping from iometer machine. use IP if need.
    

    在這裏就當了。。。
    各種版本都試過了,,,不行

    求解惑

  11. 不好意思請問一下
    這在虛擬機器裡面可以跑嗎
    因為我在KVM的QEMU(linux系統)中
    執行./dynamo -i windows的IP -m 虛擬機器的IP
    卻連不上耶 windows這邊都沒反應
    (測實體時有成功!)

    • 因為不太清楚你的 KVM 所使用的網路架構為何種,是 Virtual network 還是 Shared physical device ,如果你使用的是 Virtual network 他的運作方式雷同 NAT 外部是無法聯結到內部的,請參考 KVM – Network

  12. 關於request size問題
    Hi,您好:
    看了您的大作…想測試一下在Linux下的一些分散式File system的效能…
    但要測試時,出現了這樣的警示視窗..
    the request size does not align with disk sector size for disk /mnt/test_dir[fuse] , Sector Size=131072

    然後問妳要繼續或取消….
    繼續是可以測…但出來數據等感覺怪怪的….
    能提供上述錯誤訊息的意思跟解決方向….

  13. 我想請問一下,Results since有兩個選項,我看到你的介紹是說一個是可以做比較一個是不可以跟以前的測試做比較,
    我想請問,我在設定的時候選擇start of test的選項是指測試的當下就跟以前的資料做比對還是說測試完成之後
    可以做資料的比對呢?
    在測試的時候選擇start of test的測試結果跟選last update的測試結果是相同的嗎?
    若我只是單純想將每一種設定完成的結果記錄下來是選擇哪一種呢?

    • 在官方網站說明文件裡面說到這兩種顯示結果

      Start of Test:
      Displays the average or sum of the data gathered since the beginning of the test.
      Last Update:
      Displays the statistics collected since the previous update. For example, if the Update Frequency is set at 5 seconds, the values displayed will be the average or sum of the data collected during the last 5 seconds.

      之前我寫的並不是很正確
      Start of Test – 如果你在系統上跑過很多種 pattern 你可以用 Start of Test 來看剛剛所有跑過的 pattern 值平均或是總和.
      Last Update – 光看這一次的結果不和上一次的做比較.

      比較正確的說法應該是.
      Start of Test – 我們在進行 iometer 時,可能測試時間為一分鐘但每一秒的結果皆不同.這邊會幫我們顯示出從一開始到目前為止所平均出來的值.這值會和儲存下來的 csv 檔結果一致.
      Last Update – 顯示的結果為單位時間內的平均值,假如我設的 Update Frequency 為5秒,這邊顯示的就是這5秒的平均值.

      其實不用管這邊的結果在儲存的 csv 檔就會幫我們記錄其測試結果.

      • 非常感謝您的解說,所以您的意思應該是:
        我想測試硬碟的傳輸速率以及頻寬應該要勾選的是 Last Update然後將Update Frequency 設為無限大,
        等到測試時間到了之後所顯示的結果也等於勾選Start of Test 所得出來的結果是嗎?

  14. 你好 我可以請問一下 我使用 Iometer 2006.07.27 ,它所儲存的.CSV都是最後的結果 ,我可以把它每秒的值儲存下來嗎??

    • CSV 檔儲存的都是最後的結果,似乎無法把每秒的結果儲存下來
      你可以試著將測試改為 Cycle # Outstanding I/Os 如 Step 8 ,並將時間縮短.可以儲存到多個 Outstanding 結果.

  15. 還有一個測試上的問題想請教一下,
    我使用IOMETER測試的時候,有時假設我Outstanding I/Os設為64 ,結果頻寬跑出來一個2000MB,
    然後我修改Outstanding I/Os,改為128的時候,測試的頻寬卻突然下降成500MB,請問這是
    IOMETER本身的問題嗎?還是可能是我硬體的問題呢?
    有時候我IOMETER參數設定相同但前一個小時測試的結果跟後一個小時測試的結果會相差好幾倍

    • # of Outstanding IO 主要是在模擬測試同時多個應用程式向 I/O 請求讀寫,所以有可能會因為值太大反而會引響到硬碟的效能.

      至於測試結果相差太大建議拉長測試時間並取平均值.

      • 主要模擬許多讀寫同時進行是因為的確有可能發生,所以當我硬碟效能突然下降的時候,
        就表示我選擇的硬碟並不適合同時間做這麼多讀寫的動作嗎?
        還有就是IOMETER的測試結果部分,
        我測試的結果,有時候我反覆測試五六次結果都是相同的(每次五分鐘)
        但待機一陣子之後再測試,測試結果就又會差很多,反覆測試五六次的數據卻也
        無法回到待機前的數據,當然我設定的時間五分鐘可能不夠長,那一般來說要
        設定多久的時間才會穩定呢?因為我在測試的時候看到在跑的數據差不多三分鐘
        就達到穩定狀態了,煩請幫忙解答,非常感謝

        • 請問你用的 iometer 版本為何? 之前我在使用 iometer-2006_07_27 時也遇到一些怪問題,後來改用 iometer-2008_06_22 情況就有改善了!!

  16. 請問一般來說"8port可以到達6Gbps的速度"這句話是指8顆硬碟共同分享6Gbps還是指
    這個東西的頻寬足以讓8顆硬碟同時跑到6Gbps??
    算的話2800MB*10=28000bps
    28000/600=4.6…..顆硬碟
    這樣算法有問題嗎?

    • 因為不知道你的系統單顆硬碟還是 SAN 的儲存裝置,這邊以純粹以南橋晶片所接的出來的 SATA 硬碟來做討論.SATA 3.0 的傳輸頻寬大概是 600MBytes.計算方式如下:

      SATA Generation 3( 6 Gbit/s) – (20% overhead – 每八個位元的資料串上用十位元來加以編碼) 4.8 Gbit/s = 600 MByte/s

      所以 600(SATA 3G) / 8(硬碟) = 75Mbytes(單顆 SATA 硬碟的傳輸平均大約也是這個值).

      比較不清楚你所說的 2800MB 是用什麼裝置所測試出來的.

      雖然 SATA 的每一代都以倍數增加 Generation 1(1.5 Gbit/s) ,Generation 2(3 Gbit/s) , Generation 3(6 Gbit/s).,這邊所提昇的是資料傳輸頻寬.

      但單顆硬碟的最大效能還取決在轉速,一般 SATA 硬碟轉速為 7200 rpm.並不會因為 SATA 1.0 , 2.0 ,3.0 而變快.除非使用 RAID 或是 SSD 的儲存裝置.

      • 我是用磁碟陣列來做測試的,所以速度應該是不會太慢,問題我想主要是出在RAID卡上面吧,
        今天我換了一張RAID卡做測試,頻寬是如我一開始所想的有上去,然後改回原本使用的RAID卡
        則頻寬依然不會增加,目前我還在查看這兩張卡的規格差異,
        解決了頻寬的問題之後,我測試Write 100% (之前是測試Read 100%),結果不但頻寬降到1.XMB連流量也僅剩下165而已,
        我想盡辦法修改設定依然是徒勞無功,請問在做寫入的時候有沒有甚麼程式或是怎樣的狀況會使我寫入的速度變慢呢?

        • 會你可以嘗試詢問一下 RAID 的廠商或是你 Server 的廠商,有可能是 F.W , Driver …上的問題.

  17. 我測出一個很奇怪的數值,所以想請教一下,我的頻寬今天測出來的數據維2889.XXMB,但我的
    流量卻只有4萬多,但我頻寬測出來為190.XXMBM卻有近13萬,這是為什麼呢?
    理論上頻寬越大流量才有可能更大,為什麼我頻寬突然變這麼大但流量卻變小了?

    我修改的部分只有Outstanding I/Os 的數值而已,
    其餘的設定我是按照一般最大流量的設定,

    • 更正,不好意思,我是將512Byte修改成64KByte
      而 Outstanding I/Os數值我則是改到8
      Outstanding I/Os為1的時候頻寬為950MByte,
      修改 Outstanding I/Os值的目的主要是想拉高流量,
      我想測試看看硬碟最大流量能夠被我拉得多高,然後看到
      大大對 Outstanding I/Os欄位的介紹,才決定修改這
      個欄位試試看!

        • 我的Storage (NAS / SAN), Outstanding I/Os 原先其實也有調整過,調到4096了,
          不過在測試的時候我發現調到8~32之間流量就會飽和了,不會在上去,
          另外我想請問一下,OS碟的傳輸速度是否會影響到我測試碟的傳輸速度呢?

  18. 對於流量以及頻寬的問題
    Total I/O per Second 這個數值所表現出來的是指每秒的IO流量?
    Total MBs per Second 這個數值所表現出來是指頻寬?
    我想請問一下,這兩者的關係是?為什麼在設定上面把傳送的資料大小修改就會由流量變成頻寬呢?
    另外假設我今天使用3Gbps的硬碟測試,我想觀察這顆硬碟的傳送速率,
    我是應該要看頻寬後除以八做換算,那在流量的方面我要怎麼確定我這顆硬碟的流量是符合
    我規格上的流量呢?煩請幫忙解惑!!感恩!!

    • Q:Total I/O per Second
      Q:Total I/O per Second 這個數值所表現出來的是指每秒的 IO 流量?
      A:是的.

      Q:Total MBs per Second 這個數值所表現出來是指頻寬?
      A:應該是說傳輸量.頻寬就像是高速公路的寬度,但同時能有多少車子(硬碟的傳輸速度)在上面跑又是另外一回事.
      SATA / SAS
      Generation 1(1.5 Gbit/s) – (20% overhead – 每八個位元的資料串上用十位元來加以編碼) 1.2 Gbit/s = 150 MByte/s
      Generation 2( 3 Gbit/s) – (20% overhead – 每八個位元的資料串上用十位元來加以編碼) 2.4 Gbit/s = 300 MByte/s
      Generation 3( 6 Gbit/s) – (20% overhead – 每八個位元的資料串上用十位元來加以編碼) 4.8 Gbit/s = 600 MByte/s

      雖然 SATA 2 可以到達 3Gbit (300MBytes)但單顆硬碟在傳輸量大多只有.
      1.SATA 7200 rpm H.D
      Timing buffered disk reads: 227 MB in 3.02 seconds = 75.21 MB/sec

      2.SAS 1000 rpm H.D
      Timing buffered disk reads: 277 MB in 3.01 seconds = 92.66 MB/sec

      Q:我想請問一下,這兩者的關係是?為什麼在設定上面把傳送的資料大小修改就會由流量變成頻寬呢?
      A:硬碟的最小單位為 sector ,每個 sector 出廠預設為 512 bytes,所以要測出最大的 I/O 量會直接使用 512 bytes 為測試單位,但硬碟最大傳輸量就需要更大的資料大小才可以測試出通常建議是 64kbytes,但都只是建議值.

      Q:另外假設我今天使用3Gbps的硬碟測試,我想觀察這顆硬碟的傳送速率, 我是應該要看頻寬後除以八做換算,那在流量的方面我要怎麼確定我這顆硬碟的流量是符合我規格上的流量呢?
      A:iometer 測試出來的結果都是硬碟的最大傳輸值,並不是匯流排的頻寬.

  19. OLTP相关数据从何处获得?具有权威代表性吗?
    ——
    線上交易處理(OLTP)
    1.Transfer Request Size(傳送資料大小): 8K Byte.
    2.Percent Read/Write Distribution(讀/寫): 讀 67% ,寫 33%
    3.Percent Random/Sequential Distrution(隨機率): Random 100%
    ——-
    OLTP相关数据从何处获得?具有权威代表性吗?谢谢!

    • web server, file server ,線上交易處理(OLTP) 這些 pattern 是參考了 storagereview.com 的建議值,有興趣可以參考這一篇文章. http://www.storagereview.com/articles/200003/20000313OSandBM_5.html

      我的想法是資料庫的儲存最小單位通常預設為 8K Bytes,而資料在讀寫時,通常讀取會佔較高的比例.當然都一定是100% 的隨機.所以在測試時需要考量到實際的資料庫狀態再做 Access Pattern 的調整.才會得到最佳的效能

  20. 請問文章中的 access pattern 參考自何處
    您好, 想請問一下您文章中的 access pattern 參考自何處
    另外我看一些文章提到 iometer default access pattern 有 web server, file server 等
    但是目前最新版並沒有這些 pattern, 只有 512B, 4K, 16K, 32K 等一些不同 R/W 分布的 pattern

  21. 自動參照通知: 測試磁碟 I/O 的工具 | Benjr.tw

  22. 自動參照通知: Iometer – Mount file system, Raw device | Benjr.tw

  23. 自動參照通知: Fio – Flexible I/O Tester | Benjr.tw

  24. 自動參照通知: Iometer – Maximum Disk Size | Benjr.tw

  25. Iometer 1.1.0-rc1
    目前最新的版本為 1.1.0-rc1 http://sourceforge.net/projects/iometer/files/iometer-devel/1.1.0-rc1/ 除了事前已經編譯好的版本外

    iometer-1.1.0-rc1-osx.intel.ppc….dmg
    iometer-1.1.0-rc1-win64.x86_64-….zip
    iometer-1.1.0-rc1-win64.ia64-bi….zip
    iometer-1.1.0-rc1-win32.i386-bi….zip
    iometer-1.1.0-rc1-linux.x86_64-….bz2
    iometer-1.1.0-rc1-linux.i386-bi….bz2
    還有 source 檔可供自行編譯.

    iometer-1.1.0-rc1-src.tar.bz2
    編譯方式與舊版相似.

    [root@benjr ~]# tar jxvf iometer-1.1.0-rc1-linux.x86_64-bin.tar.bz2
    [root@benjr ~]# cd iometer-1.1.0-rc1/src
    [root@benjr src]# make -f Makefile-Linux.x86_64 dynamo
  26. 自動參照通知: 常用的 Performance / Monitor 測試工具 | Benjr.tw

  27. 自動參照通知: hdparm | Benjr.tw

發表迴響