在“Disk Targets”標簽中,還有一些相對高級的設置。譬如最下方的“Write IO Data Pattern”,設置的是用于填充數據包的類型,默認是“Repeating bytes”,顧名思義就是重復的字節,這樣比較省資源,但可能會由于數據壓縮等因素導致成績被干擾。我們一般是建議選擇第二項“Pseudo random”,偽隨機數。

上方有關“Sectors”(扇區)的內容,可以指定當前測試線程涉及的最大容量、起始扇區等。嗯,是不是想起前面我曾經提到過的“讓不同線程寫入不同的區域”?這是服務器應用中的基本調優技能,專業的測試軟件,如IOmeter、FIO都會有這樣的功能來對應這些使用需求。

具體的測試項目,可以在“Access Specifications”標簽中找到。右側是預設好的一些項目,把需要的項目添加到中間的任務框中就可以。

由于自帶的項目中沒有128KB的數據包,我們可以自行添加一個順序讀的操作,也可以在256KB項目的基礎上進行修改,數據包大小填128KB,右邊的讀寫比例拉到讀。然后,把這個項目添加到任務欄中。

類似的,我們可以再做一個順序寫的操作,也加到任務欄。相同的項目是可以重復添加的,如果想測五遍,那就各加5個項目就好了,很簡單直白。

添加了測試項目后,建議到“Test Setup”標簽中設置一下測試時間之類的,譬如10分鐘,或者更長的時間。如果時間設置均為“0”,那就是不間斷地測試,直到手動停止。在Setup中還有高級一點的設置技巧:讓隊列逐次增加,1、2、4……16、32。這個設置在下方,按照我截圖所示選擇對應的項目就可以。通過這個高級一點兒的設置可以更直觀地看到隨著隊列增加,SSD吞吐量會逐步提升。

完成設置后,點上方的綠色的旗幟就可以開始測試。測試結果會實時顯示,還可以點界面右側的箭頭(>)把儀表盤調出來。

這組測試結束時,我們可以得到了QD32、128KB順序讀寫的測試成績。

做隨機讀寫的測試時,IOmeter有包括4KB數據包在內的豐富的預設項,也包括混合讀寫的項目。任務欄中,可以分別加入4KB讀、4KB寫、4KB混合讀寫等項目,混合讀寫的比例也可以根據目標SSD的特點選擇或者稍做修改,譬如預設有50:50、75:25,可以調成70:30、90:10等?;旌献x寫的意義,稍晚些專門講一下。我們先把隨機讀寫的重要設置講透一些。

其一,預設的4KB隨機讀寫有兩類選擇,“0% random”或“100% random”。對應的設置在前面“Edit Access Specification”的截圖中可以看到,在左下方的部分。選擇“0% random”,更適合體現SSD處理能力的“上限”;選擇“100% random”,更適合體現實際應用中面臨的“下限”,代表了一種極度混亂的狀態。有理想的架構師、運維人員們都在努力減少后一種狀態的出現,盡量將隨機操作向前一種狀態優化。

其二是隊列的設置。由于隨機讀寫需要較大的隊列數,我們建議啟用8個甚至16個Worker,再搭配32的IO,那就可以實現256甚至512的隊列深度了。需要注意檢查每個Worker下的任務順序是一致的,確保每個階段各個Worker跑的是同樣的項目。

Setup中的時間依舊按需設置。至于逐次增加隊列的高級技巧也可以用上,搭配8個Worker,我們就可以睡等自動輸出8、16、32……128、256隊列深度的4KB隨機讀寫成績。

可能會有個別特別“秀”的高徒想問:能不能讓Worker也自動遞增?1、2、4、8,再搭配IO的遞增,那畫面不要太美……原則上是可以的,通過把Idle項加到任務列表前面,就可以讓指定的若干Worker暫時不參與測試。至于每個Worker輪空多少次,就看Idle的多寡了——講真,這一招只適合骨骼清奇的天才,為師我一定是有什么大病,才會想到教IOmeter初學者這么殘暴的招式。我真有這么閑,去高速公路當ETC不香嗎?

小結

看到這里,大家已經可以用IOmeter進行基本測試,甚至還掌握了一些稍微高級的測試設計技巧。但是,必須強調的是:這些操作對于消費類SSD已經足夠了,但是,對于數據中心SSD還是不夠的。

數據中心SSD的工作負荷很大,用隨機寫的“萬秒圖”并不能真正呈現其特點,甚至測試數據并不一定可靠(譬如與原廠的標稱數值差異過大),不能真正體現實際應用的價值。在下一章節,我們會著重講講,為什么數據中心SSD的性能必須是可預期的,我們應該如何獲得“可信的數據”。

未經允許不得轉載:存儲在線-存儲專業媒體 » SSD新范式 |數據中心SSD測試 之Windows篇(二)
分享到

zhupb

相關推薦

精品国产午夜肉伦伦影院,双性老师灌满浓jing上课h,天天做天天爱夜夜爽,攵女乱h边做边走