• 沒有找到結果。

Using Different Flash Geometry

Chapter 4 EXPERIMENT RESULT

4.4 Using Different Flash Geometry

此節我們將針對不同的 Flash Geometry 來觀察它對 wear leveling 效果的影響。

下面的圖分別為 K-estimation,Stepping,Partition 使用不同的 Flash geometry 的 實驗結果, Page/Block 的設定分別為 4KB/512KB 以及 4KB/2MB。4k/2M 的設 定亦可以視為 page 大小為 4KB,block 大小為 512KB 且具有 4 個非獨立 channel 的 NAND flash memory,另外在此節使用的 FTL 為 FAST。

25

圖(20.a)4KB/512KB 圖(20.b)4KB/2MB

Stepping

圖(21.a)4KB/512KB 圖(21.b)4KB/2MB

Partition Part_20G 8 point Part_20G 4point Part_20G 8 point Part_20G 4point Part_20G 2point

圖(22.a)4KB/512KB 圖(22.b)4KB/2MB

從實驗結果的圖中來看,Stepping 不論是在哪一種 Flash geometry 下,當測量的 資料量給的越少時,會造成曲線越動盪而失準。所以 Stepping -1G 幾乎都只能看 出趨勢但卻不準確,而 Stepping - 4G 則測量時間太久。而 Partition 則會因為 workload 本身具有 locality 的問題,所以把快閃記憶體切成越多部分就越會受到 這個因素影響,且測量的資料量也越少,所以就越來越不準。

26

而 K-estimation 跟上面兩個方法比起來的話,模擬出的成本-TH 關係曲線就接近 多了,唯一的缺點就是會將 Threshold 值較小的成本估計的較高一些,但是其實 我們很少會使用到這麼小的 Threshold 值,因為他會帶來太大的成本。我們可以 在從下表(10)更詳細的看到 K-estimation 所造成的估計上的差異,其實結果並不 會相差太大,而且若我們將 Threshold 極小時所造成的差異不計的話,和帄方和 的差距幾乎都降到 3 以下,其實模擬出的曲線還是相當準確的。

表(10)不同 geometry 的 RSS 值

再來是我們使用 K-estimation 在不同 Flash geometry 下所得到的 Threshold 值,見 表(11)。以及使用暴力法測量不同的 Flash geometry 所得到的成本-TH 關係圖以 及標準差-TH 關係圖,見圖(23)。

表(11)不同 flash geometry 的 K 值和 TH

從圖(23.a)中可以觀察出,block 的大小是會影響 wear leveling 的效果的,block 越大,則 wear leveling 的成本會比較低。原因在於在對一個 block size 為 2MB 的 NAND flash memory 做一次 erase 操作,都相當於一次對四個 block size 為 512KB 的 NAND flash memory 做 erase 操作,相形之下也會比較帄均,因此 block size 較大會比較少引發 wear leveling。

Geometry RSS 4KB/512KB 11.14

4KB/2MB 15.95

Geometry K Threshold 4KB/2MB 0.7536 19 4k512K - FAST

圖(23.a)不同 geometry 的成本-TH 關係圖 圖(23.b) 不同 geometry 標準差-TH 關係圖

27

當我們使用 K-estimation 測量 K 值的時候,若 block size 較大則 wear leveling 成 本較低,不會引起非常大的 overhead,因此我們會測得比較小的 K 值,算出的 Threshold 值也較小,使 wear leveling 可以比較積極的引發。

另外我們再列出不同的 Flash Geometry 在 BC 下使用暴力法所測得的成本-TH 關

實驗結果,我們發現在 BC 下 flash geometry 的影響力降低了,從圖中 4kB/512kB 和 4KB/2MB 的測量結果幾乎是一樣的。造成這個現象的原因就在於 BC 的 block thrashing 現象。BC 因為他本身架構是一個 log block 只能對應到一個 data block 的更新資料,所以他會因為 log block 使用率較低而有 log block 不足的現象,而 這種現象會因為 block size 越大變的越嚴重,因此會導致不停的引發 Garbage Collection,抵銷了大 block size 比較帄均的情況,才會讓 flash geometry 幾乎沒 有影響力。

相關文件