當前位置:
首頁 > 最新 > SSD為什麼速度那麼快?看完這篇你就懂了!

SSD為什麼速度那麼快?看完這篇你就懂了!

來源:內容來自超能網,謝謝。

使用快閃記憶體為存儲載體的SSD的讀寫過程與傳統的HDD有著本質上的不同,特別是在寫入方面,HDD是可以直接對存儲在磁碟上的數據進行覆蓋寫入的,SSD並不能這樣,快閃記憶體需要先擦除原來的數據再把新的數據寫進去,不能直接覆寫數據使得SSD多了擦除的操作,而寫入單位(Page)與擦除單位(Block)的不統一又讓SSD不停地在各個Block區塊之間折騰,SSD用久了需要擦除的區塊就會越多,性能自然也會變慢,然而現在的SSD基本都不會這樣,為什麼會這樣呢?

浦科特的SSD就以True Speed不掉速

SSD的寫入方式決定了它越用越慢的特性,數據寫入的越多性能就會越差,不過現在的SSD都支持TRIM指令與GC垃圾回收功能,在他們倆的守護下可以確保你的SSD裡面即使寫入得再多東西也不會輕易掉速。

TRIM指令

TRIM指令是微軟提出的,但是SSD廠商也有支持與不支持TRIM之分,所以還是跟SSD有一定關係。

TRIM是基於SATA控制器的一個指令,一旦有文件刪除或者分區格式化,操作系統就會發TRIM指令給SSD主控告訴它某處的數據已經刪除了,SSD因而知道哪些數據是能動的哪些不能動的,之後就可以進行清空操作以恢復性能了。不過這個過程不是馬上就完成的,TRIM命令是即時發送到SSD主控中的,但是什麼時候開始清空數據是主控演算法的事。

對TRIM指令的支持是現在SSD主控必備的

之所以有這麼一個溝通過程還是跟SSD與HDD的讀寫方式不同有關,首先操作系統的刪除數據並不是真正把數據清空了,只是加了刪除的標籤而已(就像摘了門牌號,房子還在一樣)就是說真實的數據還在,不過普通的操作訪問不到了,但是一些專用的數據恢復軟體可以把這些數據再找回來。

HDD機械硬碟是可以直接在原有數據上直接覆蓋,但是SSD不行,必須要清空原有數據才能寫入新數據,而系統並非真正刪除數據的特性會對SSD的性能造成影響,TRIM指令的存在使得SSD能夠緊緊跟隨OS的操作意圖,擦除已刪除的無用數據以恢復SSD性能。

上圖很好的說明了TRIM指令是如何工作的,前三步分別是空數據、寫數據和刪除部分數據,在此之後TRIM指令就會通知SSD主控可以清空紅色區域的無用數據,之後SSD的性能就可以恢復如初了。

TRIM支持與否依賴於操作系統、磁碟控制器驅動以及SSD主控,Win7、Windows 2008 R2、Linux 2.6.33、MAC OS 10.6.6、Free BSD 8.2及之後的系統都支持TRIM或者類似指令,Intel 9.6.0.1014及之後的磁碟驅動都可以支持,不過TRIM指令並不強制要求AHCI,IDE模式也可以,只是SSD幾乎沒誰用IDE模式吧。

微軟PPT中專門解釋過TRIM指令的工作方式和優點

Intel在RST 11.5之後的驅動中提供RAID模式的TRIM指令支持,還有一些廠商用自己的方式解決了RAID模式下的TRIM指令問題。另外,XP系統下是不支持TRIM指令的,不過三星的工具軟體也可以讓其SSD實現類似TRIM的功能。

浦科特M8Se有著很高的TRIM效率,這可以提高產品的性能穩定性,能讓SSD能夠保持較長時間的高速運行,還可以抑制寫入放大,提高快閃記憶體的壽命:

用戶可以自行檢查TRIM指令開啟與否,打開CMD窗口定位到「fsutil behavior set DisableDeleteNotify 0」表示啟用TRIM,如果是1就表示禁用狀態或者不支持。

GC垃圾回收

垃圾回收(garbage collection,簡稱GC)是SSD恢復性能的另一大秘籍,這個主要跟廠商所用的主控有關,其意義就跟字面意思一樣,通過清理無用的垃圾數據保持SSD性能如新。

它的存在還是跟SSD的特性有關,空盤下SSD寫入數據所需時間以ns計,但是擦除數據的過程則以ms計,寫入的數據越多,需要擦除的時間也越長,SSD的寫入性能就會嚴重下降,GC機制相當於」騰籠換鳥」,把原本雜亂無章存放的數據整理一遍,然後寫入到新的空白區,之前的區塊就會進行清除操作以恢復正常性能。

GC的處理過程

由於各種寫入、刪除操作會在SSD留下雜亂的數據,其中有些是還有用的,有些就是無效的,GC功能啟動之後就把有用的數據拷貝到另外的區塊,這一步相當於「騰籠」,原來存儲數據的區域就會被 清除,恢復空盤水平以準備寫入新的數據,這就是「換鳥」了。

上面只是理論操作過程,具體怎麼做還有個選擇問題,如果在SSD讀寫數據的同時進行GC操作,這種實時GC(Real Time GC)對主控的性能是個考驗,一方面要往空白區寫入數據,同時還要照顧無效數據的「拆遷」工作,這麼頻繁折騰SSD的話估計SSD那有限的讀寫壽命也支撐不住,實時GC並不可取。

浦科特在2011年的M2P就使用過相當激進的實時GC功能,性能確實不會降低,不過那個時候的快閃記憶體還是32nm的MLC,壽命相當有保障,現在無論MLC還是TLC都不夠膽這樣玩了。

目前的GC大都是在SSD閑置時才開始工作,也就是所謂的「Idle Time GC(閑置GC)」了。廠商會在主控中設定一個條件,比如空白容量達到某種比例才開始GC處理,這樣就預先釋放了空白空間,如果達到設定條件的上限,那麼GC也會停止,這樣處理比實時GC更利於延長SSD壽命。

閑置GC也不是完美無缺的,它會帶來額外的寫入放大,因為在GC處理開始之前,某些整理過的頁面(page)可能正在變髒,不過閑置GC增加的寫入放大率非常小,OCZ稱其SSD的閑置GC只有額外的1%放大率,影響非常小,整體上依然是利大於弊。

現在的SSD大都是利用TRIM和閑置GC相輔相成工作的,當用戶刪除或者修改文件時,系統就會發送TRIM指令告訴SSD那部分數據可以刪掉了,然後SSD在閑置時就會對這部分區域進行GC騰出空白的快閃記憶體空間,實時GC功能現在在啟用SLC Cache的SSD上會比較明顯,畢竟它們要快速的騰出SLC Cache空間給後續的數據,這樣才能確保SSD擁有高速的寫入。

TRIM指令通知給SSD的可刪除數據越多,GC操作需要轉移的數據就越少,寫入量也會減少,對SSD來說也是延長使用壽命的一種方式。

今天是《半導體行業觀察》為您分享的第1327期內容,歡迎關注。


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 半導體行業觀察 的精彩文章:

博通專利案敗訴,IP才是未來企業核心競爭力
3D NAND到底行不行,一文讀懂3D NAND的神話與現實
外媒稱中國偽造的晶元恐致命,你以為我們想啊!
連接IC設計與製造的橋樑——芯原
又一個被中國廠商做死的晶元市場!

TAG:半導體行業觀察 |

您可能感興趣

LSD的優點是什麼?用怎樣的速度跑?來深度了解下吧!
搞笑趣圖:這下尷尬了吧,誰叫你速度慢了呢
搞笑GIF:就你這速度,給我兩把削皮刀也趕不上!
喝完的易拉罐別扔了!只需這樣剪一刀,WiFi速度立馬快百倍!
你好小娜,你在iOS上速度快嗎?
貓咪變臉的速度太快,就像龍捲風!它的這些表情你都見過了嗎?
搞笑GIF:這速度 我堅持不了三秒就下來了
這年頭做SEO沒有速度吃屎都趕不上熱的!
你好小娜 你在iOS上速度快嗎?
SSD跑的慢?達不到標稱速度怎麼辦?
搞笑GIF趣圖:就服妹子這個反應速度,一點都不尷尬,不尷尬!
為什麼吉利汽車新車速度這麼快?答案並不是你想的那樣
為什麼OPPO R17Pro手機充電速度那麼快?看完你就明白
跑步速度提不上去,這是為什麼?
要想SSD速度快壽命長,請記住這幾點
喵:小鏟屎的你這變心的速度也太快了吧……
如果一個人的速度超過了光速!那麼會發生什麼?
這什麼速度,養偶像快過養豬!
我國特種兵的吃飯速度為什麼會這麼快?看後真讓人感到心疼!
怎樣才能讓減肥效果更好速度更快:先看懂這篇