點擊右邊

大神教你玩轉 SSD 系列二:基打 老虎機 心得準測試情況以及項目

《大神教你玩轉 SSD 系列二:基準測試情況以及項目》要點:
本文先容了大神教你玩轉 SSD 系列二:基準測試情況以及項目,但愿對您有效。若是有疑難,可以接洽咱們。

若何評價固態存儲裝備的機能,并依據營業需求遴選出合適的SSD產物?在上一篇中,先容了 SSD 基準測試應當存眷哪些指標,這里咱們持續存眷基準測試情況以及詳細測試項目.

媒介

本系列將分為如下 4 個主題進行先容.

1、SSD基準測試應當存眷哪些指標

二、基準測試情況(對象/磁盤要求等)

3、針對磁盤的詳細測試項目

4、數據處置

本篇首要先容第二、三點——基準測試情況以及詳細測試項目,在前面的文章推送中會持續將把本系列的其余各主題分享給人人.

基準測試情況

1.1 測試情況

  • SanDisk CloudSpeed 800G * 4 RAID 5
  • Micron 5100 ECO 960G * 4 RAID 5
  • E5 2630 V2 *1
  • 96GB DDR3 ECC

1.2 對象

  • fio – 跨平臺的 io 壓力天生對象.功效強盛,支撐浩繁引擎以及體系調優參數,數據采集,自帶gnuplot繪圖劇本.
  • iometer &#今彩539中2個號碼多少錢8211; io 壓力天生器,帶GUI界面,數據采集功效強盛,功效以及參數并不如 fio 多,多用于 Windows 平臺(本次未采取).
  • hdparm – linux下的磁盤對象,可以查望磁盤信息,用來進行寧靜擦除,配置 ATA 參數,配置HPA等
  • smartctl – linux下查望smart信息的對象.
  • python,perl,php,go,shell,awk,c,cxx …… 隨意一個說話都行,用于處置fio天生的大批數據.
  • excel – 沒錯,便是excel,用來處置數據作圖.當然只是為了便于鋪示,現實主動化測試流程可以用任何說話間接處置數據天生圖表.

測試對象選擇有許多,譬如fio,iometer,iozone,sysbench 等,但之以是選 fio,有如下緣故原由:

  1. 大樂透加碼開獎號碼然上述對象根本都能勝任,但fio在linux下運用比較多,有比較深摯的群眾根基,文檔以及郵件組也相對于完美,尤為是郵件組,很多多少碰到的成績都搜到了作者的答復,讓我甚是激動.
  2. fio更“業余”一些,iometer 相對于可選擇的參數少量多,運用平臺也以windows為主,iozone 粗略望了一下,功效差不多,但海內用的較少,限于時間以及閱歷沒有深切研究
  3. sysbench更得當一些特定場景的測試,譬如OLTP,基準測試 fio的功效充足且埋頭.

fio 可以使用一系列的過程或者者線程,來實現用戶指定的一系列io操作,典型的使用方式是寫一個 JobFile,來摹擬特定的 io 壓力.

fio是測試IOPS的特別很是好的對象,用來對硬件進行壓力測試以及驗證,支撐13種不同的I/O引擎,包含:sync,mmap,libaio,posixaio,SG v3,splice,null,network,syslet,guasi,solarisaio 等等.

關于單qd,可以間接用 sync,關于多qd,libaio + 深qd 或者者 深qd+多過程(numjobs).

1.3 磁盤要求

  • 新盤或者者做過完備的寧靜擦除
  • 關于曾經經配置過 HPA (Host protected Area,ATA8-ACS SET MAX ADDRESS),排除HPA
  • 不該該使用raid,除非想測試raid下的機能 但實在這些都不是硬性要求.起首磁盤用用就釀成臟盤了,第二,很少有人配置HPA,第三,多半SATA磁盤終極都邑掛在RAID卡上用.以是以上三點都是測試單個盤的要求,終極,仍是倡議怎么用就怎么測.

妞妞鐵支

已經經踩過的坑:

  • fio 版本不要使用 2.0.13,一最先間接經由過程擔保理裝置了 fio 2.0.13,使用中種種 CPU 100%,數據飆高,還出了 core,因而被迫 cmm 大法編譯裝置了新版.
  • 裝置新版 fio 可能必要裝置 zlib-dev libaio-dev,若是你在沒裝置前就編譯了,必要從新編譯.

1.4 劇本

測試中沒有使用 jobfile 的情勢,而是間接使用了下令行,實在這兩種沒有甚么實質區分,根據小我私家喜愛.

/usr/local/bin/fio –filename={FIO_TEST_FILE}

–direct=1

–ioengine=libaio

–group_reporting

–lockmem=512M

–time_based

–userspace_reap

–randrepeat=0

&#821539連碰算法1;norandommap

–refill_buffers

–rw=randrw –ramp_time=10

–log_avg_msec={LOG_AVG_MSEC}

–name={TEST_SUBJECT}

–write_lat_log={TEST_SUBJECT}

–write_iops_log={TEST_SUBJECT}

–disable_lat=1

–disable_slat=1

–bs=4k

–size={TEST_FILE_SIZE}

–runtime={RUN_TIME}

–rwmixread={READ_PERCENTAGE}

–iodepth={QUEUE_DEPTH}

–numjobs={JOB_NUMS}

先容一下測試中可能會用到的參數

–filename 指定fio的測試文件路徑.可所以文件或者裝備(裝備必要root權限)

–direct=1 繞過緩存

–ioengine=libaio 使用libaio,linux原生異步io引擎,更多引擎參考fio man

–group_reporting 將一切的過程匯總,而不是關于每一個job 零丁給出測試效果

–lockmem=512M 將內存限定在 512M,然而現實測試中發明好像沒甚么用,有待調查

–time_based 縱然文件讀寫終了照舊持續進行測試,直到指定的時間收場

–rwmixread 讀寫比例,0為全讀,100為全寫,中間為夾雜讀寫

–userspace_reap 提高異步IO收割的速率.

這是霸爺的詮釋 (?http://blog.yufeng.info/archives/2104?),未做深切研究,但從測試來望,好像影響不大

–randrepeat=0 指定每次運轉發生的隨即數據弗成反復

民間詮釋 Seed the random number generator in a predictable way so results are repeatable across runs. Default: true.

–norandommap 不籠罩一切的 block

一般來說,在進行4k 讀寫時,因為隨機數的不確定性,可能有些塊自始至終都沒有被寫到,有些塊卻被寫了很多多少次.但關于測試來說 是否齊全籠罩到文件并沒有甚么瓜葛,并且測試時間相對于充足長的時辰,這些統計都可以略過.

–ramp_time=xxx(seconds)

指定在 xxx 秒以后最先進行日記記載以及統計(預暖),非穩態測試這里指定了10秒,用于讓主控以及顆粒“進入狀況”

–name 指定測試的稱號,代號

–write_latency_log=latency_log前綴 記載耽誤日記

–write_bw_log 記載帶寬(吞吐量)日記

–write_iops_log 記載 iops 日記

–bs=4k 4K測試

–size=XXXG 指定測試文件巨細,如不指定,寫滿為止 或者者通盤(例如/dev/sdX /dev/memdiskX)

–runtime=1200 履行1200秒,或者者履行完備個測試,以先到達的為準.若是指定了 –time_based,則以此為準.

【免責聲明】本站內容轉載自互聯網,其相關談吐僅代表作者小我私家概念盡非權勢巨子,不代表本站態度。如您發明內容存在版權成績,請提交相關鏈接至郵箱:,咱們將實時予以處置。

捕 魚 達人 大陸