據英特爾有關人士透露,在未來幾年,英特爾IT將100%采用(固態硬盤)SSD解決方案,而SSD較之傳統機械硬盤本身的優越性必然會成為企業IT部門的主流解決方案。但是由于SSD制作工藝及技術的創新,導致檢測SSD性能的方法與傳統的機械硬盤檢測方法迥然不同。那么如何正確檢測SSD的性能呢?這是本節課程所要討論的問題。
性能測試的重要性
上圖是除了硬盤不同以外,其他軟硬件均配置相同的兩臺華碩G60J筆記本英特爾酷睿i5 M430,英特爾 HM55芯片組,4GB(2X2GB)DDR3 DRAM ,英偉達GeForce GTS 360M顯卡,Windows 7 Home Premium 64,英特爾Rapid Storage Technologr驅動 10.1.0.1008.HDD系統為Momentus 7200rom的希捷ST9500420AS 500GB HDD;SSD系統使用300 GB 英特爾固態硬盤320系列。
由此觀之,性能測試對于企業IT部門來說是很重要的。
巧妙復雜的SSD
SSD是以一page寫入,而擦除則是以block為最小單位。所以全新的SSD因為數據順序寫入,所以能達到最佳性能。而使用過的SSD則將新數據寫入空白區域,然后原始數據被標注無效,當需擦除數據時,以NAND數據塊(block)為單位進行擦除。其總結起來,有以下兩個過程:
移動有用數據塊;
擦除數據塊并更新數據映射表。
性能測量的方法
由于SSD是采用全新的制作工藝,為了全面衡量其品質,特采用以下的測量方法:
綜合性測試法
規律性的I/O操作(順序、隨機讀/寫)
典型工具:Iometer,CrystalDiskMark
應用型測試法
調用實際應用的腳本并用時間來衡量
典型工具:SYSmark
軌跡型測試法
記錄用戶或腳本的I/O操作時序并予以回放
典型工具:PCMark Vantage,HDD Score
不同測試方法得到的對立結果(如圖所示)
值得欣慰的是:所有的測量方法均顯示SSD比HDD要快得多
而存在的問題:針對相同的SSD,不同的測試方法會導致迥異的結果
綜合性測試方法對于SSD來說,過于簡單
應用測試應該是最佳的,因為最接近實際使用情況,但是只有一小部分的系統測試指標對硬盤敏感。甚至那么硬盤敏感型應用也常與硬盤本身存在較為有限的相關性。如:
對CPU敏感:MPEG2到MPEG4的格式轉換
對兩者都敏感:打開視頻編輯器
對硬盤敏感:加載MPEG2文件,保存MPEG4文件
軌跡測試法:潛力無限
#p#副標題#e#
以軌跡為基礎的測試方法很好的模擬了真實應用情形:
對現實用戶所有的I/O操作進行追蹤和采集
然后將采集的I/O軌跡回放到測試盤
回放過程中對測試盤的I/O再一次進行跟蹤采集
記錄的是I/O操作時間,而不是系統所耗時間
不同的軌跡
人為設置的vs 真實的;使用模式的差異,采集時間短vs長
此外,軌跡時序也值得考慮
不同的回放方法
不同的工具和選項,軌跡不加修改直接回放vs加以修改后回放
數據預填充,單任務順序運行,多任務運行等
不同的統計指標
高迸發部分回放vs全部軌跡回放vs兩者組合
MB/s vs 延時 vs 時間
數據預填充 & 工作負載的實際影響
通用的基準 測試(SYSMark*, PCMark* CrystalDiskmark*) 通常寫入量較少,使用LBA地址范圍有限,僅能填充到空白區,且工作負載的組合并不典型。并且用戶不希望他們的數據被改寫,再者不同的數據預準備其結果也將會發生變化,還有剛好寫入空白區出現最佳性能的情況,因此,測試必須要達到一種“穩態”性能。
基于軌跡的性能測試試驗: 配置
工具:
英特爾性能評估分析套件(IPEAK)
PCMark Vantage*中所使用的同樣工具
方法:
將保存的用戶軌跡予以回放
回放過程中跟蹤被測設備的性能
分析結果,定義指標記分方法
被測設備:
英特爾SSD,非英特爾SSD,HDD (7200 & 10K RPM)
軌跡來源:
辦公用的預裝Windows 7*的筆記本電腦
沒有人為加速設置
讀/寫、LBA地址范圍以及存儲的數據與真實的應用模式相匹配
數據來源于配置有SSD的系統,因此數據采集時間是一大挑戰
10天的跟蹤,包括~70 GB寫和~120 GB的讀
回放:
軌跡回放兩遍: >>SSD容量, 以得到穩態性能
硬盤的每個LBA都被預先寫入數據– 對于SSD來說最惡劣的情形
TRIM操作在回放時被略過–以使SSD一直處于寫滿狀態
采用原始的時序,但有兩點不同
命令間的停頓保持恒定,完成一項操作后立刻進行下一項操作以求與真實的使用情形相仿
大于25ms的停頓被縮減為25ms,以平衡臟數據回收時間和整個測試時間
曾嘗試過10x時間(250ms),區別有限
數據傳送量vs時間的圖表顯示了高I/O操作導致的階躍: 迸發性的IO需求
那些急速上升的點看起來是非迸發性的,然而事實上其恰恰反映了230 MB/s的迸發性的IO需求!
迸發點通常是I/O操作對性能影響較大的時間段
通常的“沙漏瞬間”,像打開應用、保存文件等操作
CPU發送請求快于SSD可以響應的時間
非迸發的時間段有時會有稍許影響,但一般來講影響甚微
例如: 從網上下載數據并不依賴于硬盤的速度
迸發分析
選擇迸發軌跡所需的兩個 原則:
至少10MB數據傳輸
沒有大于100?s的停頓時間
按照上述原 則采集 的迸發 軌跡看 起來能 很好的 測試SSD的峰值性能
總共50GB的數據傳輸,遠大于大多數基準測試
平均98%的繁忙時間,只有2%命令間歇
平均序列深度為20
平均迸發為30MB,最大是~750MB
迸發軌跡 vs 全軌跡測試
迸發軌跡測試和全軌跡測試的性能呈線性相關,但不夠明顯
同樣的盤有平均12%的偏差,最大偏差達到25%
短時間 vs 長時間軌跡
未來的SSD
SSD的性能在當前應用環境下并未得到完全體現,如今的應用程序和操作系統大多針對HDD開發,盡管消除90%的存儲時間是那么的完美,但是這種好處卻受到應用程序和操作系統的制約。相信在未來,應用程序和操作系統的改變將允許系統充分利用SSD不斷提升的性能。
原文鏈接:http://tech.watchstor.com/labs-130929.htm