• 沒有找到結果。

Benchmarking SSD

我們對於固態硬碟的效能評測,是以黑箱測試的形態測試外部的效

4.1 Benchmark Methodologies

我們提出的固態硬碟效能評測方法主要有兩個步驟,第一個步驟是 收集實際 Workload 的存取記錄,這些存取的紀錄稱為 Trace,我們稱為 trace-gathering .第二個步驟是在待測的固態硬碟上完整的重現存取行 為,稱為 Trace-Replay.

現階段的效能測試工具多以循序與隨機的測試樣式為主無法包含所有實 際的存取行為,因此也無法反應固態硬碟的真實效能,因此我們採用真實 的 Workload 作為我們的測試樣式,圖(4)是我們的系統結構.

圖(4)系統架構

在 trace-collecting 階段,我們首先建立一個專屬的硬碟給我們的 目標 Workload 使用,在這個硬碟上並沒有存放其他的使用者資料,當一個 Workload 收集完成後便執行格式化消除之前 Workload 所殘留的資料.我 們這麼做的目的是希望可以讓一個 Workload 的特徵可以被我們很完整的 捕捉到而不被其他程序所稀釋掉.鮮明的特徵有利於我們辨認一個 Workload 對特定管理議題的衝擊並且分類.由於固態硬碟的管理都是被 寫入所引發,因此我們只收集一個 Workload 的寫入行為.在收集 trace 的 時候,必須要在檔案系統層以下的驅動程式層進行,如此才能收集到實際 會發生在硬碟上的存取行為.

在 trace-replay 階段,我們同樣在驅動程式層在待測的固態硬碟上 重現一個 Workload 的寫入行為.待測固態硬碟的初始狀態為無任何資料, 以免影響管理方法的決策.為了避免固態硬碟上的背景管理機制被啟動, 寫入與寫入之間不能有延遲時間.背景的管理機制通常對提升效能是有 幫助的,但是這並不代表管理的方法比較優異而成本較少,因為管理的成 本只跟寫入的位置以及先後順序有關係,所以在測試的時候不能讓背景 活動隱藏了管理方法的缺陷.

4.2 Performance Metrics

回應時間是一個常用於固態硬碟測試的指標,因為當一個寫入動作 啟動了管理機制,則回應時間會因為資料搬移與抹除而延遲.但是在實際 的 Workload 中,每一筆寫入動作的資料長度並不相同,資料長度較長的寫 入動作本身就需要比較長的傳輸時間,因此單純從回應時間辨認

Workload 引發的管理活動會容易造成混淆,如圖(5)所示.管理成本與傳 輸成本混雜在一起,因此必須要提出一個新的指標反映固態硬碟的管理 活動.

圖(5)使用回應時間判讀管理活動

我們將每一筆寫入動作的回應時間除以傳出的資料長度,得到了新 的指標:Per-Byte-Response,簡稱為 PBR.我們的目標是要突顯傳輸長度 短但是回應時間卻很長的寫入動作,因為這種現象很明顯是管理的成本 所造成的,我們稱類型的寫入動作為異常.為了要能夠辨認效能低落是哪 個管理環節所造成的,我們設計了一種三維的視覺化方式,我們以每一個 寫入動作的編號為 X 軸,以寫入動作的起始位置為 Y 軸,而 Z 軸則為每一 個寫入動作的 PBR 值. 呈現異常的寫入在空間與時間上的分佈情形,再進 一步從分布情形判讀是哪一個管理環節出了問題導致效能不佳,如圖(6) 所示,和圖(5)對比之下,可以明顯辨認出效能的瓶頸.

圖(6)使用 PBR 判讀管理活動 X: 20000~60000 Y: 1e7~1 5e7

4.3 Symptoms of SSD Performance Issues

對於一般使用者來說,直接判讀某一個 Workload 造成的異常寫入分 佈並不是一件簡單的事,畢竟這需要對固態硬碟的管理有一定程度的了 解.因此我們從 PBR 的異常分佈整理出一些可以輕易判讀的典型症狀,並 且告訴使用者這些症狀對應了固態硬碟的管理上的何種缺失,這樣我們 的效能指標才可以被一般使用者重複利用.正常的固態硬碟管理活動,應 該是一種很被動但是很有效率的行為,因此在分佈圖上的情形,應該是異 常的寫入數量極少,且這些異常的讀數也不高.當管理的某個環節失效時, 在分布圖上的表現是有大量的寫入異常出現,我們將這些異常的分佈歸 納成三種狀況,分別對應了位置轉換,空間回收,以及寫入緩衝管理失效 的情形. 可以在圖(6)中標示 X 座標介於 20000 至 60000,Y 座標介於 1e7 到 1.5e7 的圖形觀察到這三個現象.

第一種異常的分布情形是,異常的寫入動作散亂的分佈在大範圍的 邏輯位置上,如圖(7)所標示的情形.這種情形表示這些異常與空間有密 切的關係.在更新的行為並不強烈的情況下,卻引發了頻繁的管理動作, 典型的原因固態硬碟上的空間並沒有妥善的利用,因此我們可以把這種 異常歸類到位置轉換機制無法完整的利用實體空間所導致的結果,

圖(7)Mapping 機制不良

第二種異常的分布情形是在小範圍且短時間內密集的出現而且 PBR 讀數極高,如圖(8)所示,這種情況表示某份資料正被頻繁的更新,因此引 發了空間回收的動作.可以從兩個方向來解讀這種異常,首先,異常高的 PBR 讀數表示空間回收時付出很多資料搬移的成本,典型的原因為冷熱資 料沒有分離.而密集的出現表示空間回收的機制在策略上出現問題,例如 過早啟動或是挑選不當的回收目標,因此我們將短時間小範圍的密集寫 入異常歸類為空間回收機制不良的症狀.

Scattered vastly

圖(8)回收機制不良

第三種異常的情形是出現效能落差極大的時候,如圖(9)所示,這種 落差的情況有可能與寫入緩衝有關.當緩衝區還有空間的時候,寫入被吸 收到 RAM 中,因此效能極佳,但是當緩衝區開始將資料寫回到固態硬碟上 時,可能會引發固態硬碟的管理動作而造成效能下滑,如果緩衝區的管理 機制沒有搭配快閃記憶體的管理,那麼下滑的情況可能會更嚴重,因為管 理的成本並沒有減少.我們可以將這種效能落差很大的情形,歸咎到寫入 緩衝管理的方法沒有辦法減少管理的成本.

圖(9)寫入緩衝不良

相關文件