如今已經(jīng)是9102年了,裝機(jī)、升級(jí)電腦首選SSD硬盤(pán)的理念早就深入人心了,再加上這一年多來(lái)NAND閃存價(jià)格不斷下滑,SSD硬盤(pán)價(jià)格應(yīng)聲回落,1TB容量的SSD硬盤(pán)千元內(nèi)售價(jià)已經(jīng)是主流,而且還可以買(mǎi)到更高性能的M.2硬盤(pán)而非SATA硬盤(pán),不怕死的話還可以考慮一些將近5毛/GB的雜牌SSD硬盤(pán),買(mǎi)來(lái)當(dāng)倉(cāng)庫(kù)盤(pán)還是可以的。回頭看看多年不降價(jià)的HDD硬盤(pán),機(jī)械硬盤(pán)市場(chǎng)日薄西山不是沒(méi)道理的。 但是HDD硬盤(pán)逐漸遠(yuǎn)離桌面、筆記本電腦市場(chǎng),這就能代表SSD硬盤(pán)各種完美了嗎?還真不是,如今在大降價(jià)的環(huán)境下SSD硬盤(pán)各種“真香”,但它還是有一個(gè)讓人糟心的問(wèn)題——掉速。對(duì)于SSD硬盤(pán)掉速,長(zhǎng)期使用過(guò)SSD硬盤(pán)的玩家應(yīng)該有體會(huì)(也有人其實(shí)沒(méi)意識(shí)到這個(gè)問(wèn)題),今天的超能課堂我們就來(lái)談?wù)凷SD硬盤(pán)的掉速問(wèn)題。 對(duì)于SSD硬盤(pán)掉速,目前并沒(méi)有準(zhǔn)確的定義,這里我們就按照字面意義上的掉速將其理解為“性能下降”,分析目前可能導(dǎo)致SSD掉速的種種原因及解決方案。如果想更好地理解SSD硬盤(pán)掉速問(wèn)題,建議閱讀一下我們之前做過(guò)的兩篇橫評(píng): 花開(kāi)正當(dāng)時(shí),十四款120/128GB SSD橫評(píng)(7年前我們的評(píng)測(cè)就開(kāi)花了) 再度重拳出擊,十六款240/256GB固態(tài)硬盤(pán)2014年度橫評(píng) 超能課堂(152):QLC閃存靠譜嗎?它可否堪用? ·SSD掉速之SLC、MLC、TLC到QLC變遷 閃存類型的升級(jí)也是SSD硬盤(pán)掉速的原因嗎?仔細(xì)想想的話還真沒(méi)錯(cuò),實(shí)際上我們可以說(shuō)正是閃存類型不斷變化才導(dǎo)致了SSD硬盤(pán)掉速問(wèn)題越來(lái)越嚴(yán)重,如果我們還在使用SLC閃存,那掉速問(wèn)題早就不是事了,只不過(guò)SLC閃存硬盤(pán)這事別想了,最好的閃存意味著最貴的成本,即便廠商現(xiàn)在還敢把SLC閃存當(dāng)主力,普通消費(fèi)者也用不起。 從SLC、MLC到TLC再到QLC,由于cell單元可以保存的電荷位越來(lái)越多,容量在不斷增加,相應(yīng)地成本在下降,但是NAND閃存先天的特性就注定了電位越多,控制就越復(fù)雜,寫(xiě)入數(shù)據(jù)的時(shí)間就越長(zhǎng),導(dǎo)致性能大幅下滑(主要是寫(xiě)入性能,讀取性能還好)。 我們現(xiàn)在看到的TLC、QLC閃存的硬盤(pán)性能指標(biāo)還不錯(cuò),SATA接口的也能達(dá)到500MB/s寫(xiě)入速度,M.2接口的視PCIe 3.0通道數(shù)不同,寫(xiě)入性能可達(dá)1GB/s、2GB/s甚至更高,但是這樣的性能是施了魔法之后的,是理想情況下的性能。 上圖就是英特爾QLC閃存的660P硬盤(pán)的實(shí)際表現(xiàn),隨著寫(xiě)入數(shù)據(jù)量的增加,緩存空間用完之后QLC原始性能就暴露無(wú)遺了,寫(xiě)入速度就降至100MB/s,這性能沒(méi)比HDD硬盤(pán)快多少了。 ·SSD掉速之垃圾回收GC、TRIM 提到SSD硬盤(pán)掉速問(wèn)題,老玩家可能還會(huì)想起來(lái)早些年浦科特 在自家M系列高性能SSD硬盤(pán)中宣傳的不掉速功能,這個(gè)賣(mài)點(diǎn)當(dāng)時(shí)是吸引了不少SSD用戶的,考慮到那時(shí)候MLC閃存還是市場(chǎng)主力,SSD硬盤(pán)掉速主要是因?yàn)楫?dāng)時(shí)的主控管理機(jī)制問(wèn)題所致。 具體來(lái)說(shuō)就是SSD的GC垃圾回收以及TRIM指令問(wèn)題,如果大家看過(guò)我們之前的科普文章,就知道NAND閃存特殊之處就在在于寫(xiě)入文件的方式,需要一塊一塊的刪除,由于各種寫(xiě)入、刪除操作會(huì)在SSD留下雜亂的數(shù)據(jù),其中有些是還有用的,有些就是無(wú)效的,GC功能啟動(dòng)之后就把有用的數(shù)據(jù)拷貝到另外的區(qū)塊,原來(lái)存儲(chǔ)數(shù)據(jù)的區(qū)域就會(huì)被清楚,恢復(fù)空盤(pán)水平以準(zhǔn)備寫(xiě)入新的數(shù)據(jù),SSD硬盤(pán)的性能也就恢復(fù)了。 除了GC垃圾回收機(jī)制,微軟在Windows 7及之后的系統(tǒng)還引入了TRIM指令,這是基于SATA控制器的一個(gè)指令,一旦有文件刪除或者分區(qū)格式化,操作系統(tǒng)就會(huì)發(fā)TRIM指令給SSD主控告訴它某處的數(shù)據(jù)已經(jīng)刪除了,SSD因而知道那些數(shù)據(jù)是能動(dòng)那些不能動(dòng)的,之后就可以進(jìn)行清空操作以恢復(fù)性能了。 GC及TRIM也能影響SSD硬盤(pán)的掉速,不過(guò)現(xiàn)在來(lái)說(shuō)這些功能已經(jīng)變成了SSD的基本功能,操作系統(tǒng)上的支持也不是問(wèn)題了,因?yàn)檫@兩個(gè)問(wèn)題導(dǎo)致SSD掉速的現(xiàn)象少多了。 ·SSD掉速之840 EVO掉速門(mén) 從SLC到MLC再到TLC、QLC,不僅閃存的性能在逐漸下降,其實(shí)可靠性也是在降低的,反映到物理層就是由于TLC、QLC閃存存儲(chǔ)的電荷位更多,控制也更復(fù)雜,而隨著時(shí)間的流逝,電子的活性也會(huì)損失的,在TLC閃存剛問(wèn)世的時(shí)候,三星840 Evo就出現(xiàn)過(guò)長(zhǎng)期不用導(dǎo)致性能下降的問(wèn)題。 840 EVO掉速門(mén)事件就是說(shuō)它在讀取存儲(chǔ)超過(guò)數(shù)周或者數(shù)月的舊文件時(shí),速度嚴(yán)重不如預(yù)期,官方指標(biāo)中840 Evo讀取速度超過(guò)450MB/s,但讀取舊文件時(shí)速度就低至60MB/s,速度明顯下降。 對(duì)于這個(gè)問(wèn)題,三星之后也做了調(diào)查,表示“借助閃存管理軟件算法,SSD通常會(huì)隨時(shí)間校正Cell單元的狀態(tài),840 Evo的讀取-重試(read-retry)操作太過(guò)激進(jìn),導(dǎo)致了整體讀取性能的下降。這種情況只會(huì)發(fā)生在其內(nèi)部Cell單元無(wú)數(shù)據(jù)變化的情況下,如果這個(gè)單元的數(shù)據(jù)隨后遷移了或者被覆寫(xiě)了,這就不會(huì)有性能下降的問(wèn)題 。” 最后三星發(fā)布了新固件,解決了840 Evo掉速的問(wèn)題。在這個(gè)問(wèn)題上,三星沒(méi)有承認(rèn)這是TLC閃存的問(wèn)題,但在發(fā)展初期,TLC閃存從閃存到主控管理都是有些問(wèn)題的,出現(xiàn)這個(gè)問(wèn)題并不意外。 ·SSD掉速之主控過(guò)熱保護(hù) 上面提到的SSD掉速都是圍繞閃存而言的,但SSD主控其實(shí)也會(huì)影響SSD掉速問(wèn)題,這主要是由于SSD硬盤(pán)的過(guò)熱保護(hù)問(wèn)題引起的,SATA硬盤(pán)上基本上沒(méi)這么問(wèn)題,主要是在高性能M.2硬盤(pán)大量上市之后才比較集中的。 SSD主控本質(zhì)上也是基于ARM或者自研架構(gòu)的CPU,為了提高性能,SSD主控往往也是多核心架構(gòu)了,三核甚至四核主控不少見(jiàn),高負(fù)載下發(fā)熱也是個(gè)問(wèn)題。對(duì)于高性能PCIe、M2接口的SSD硬盤(pán)來(lái)說(shuō),由于空間狹小,發(fā)熱集中,主控區(qū)域的溫度超過(guò)90°C甚至上百度都很正常,為了避免高溫?fù)p壞,SSD硬盤(pán)會(huì)有溫控機(jī)制,檢測(cè)到溫度過(guò)高就會(huì)降頻,進(jìn)而減少發(fā)熱。 不過(guò)降低主控頻率,實(shí)際上也會(huì)降低SSD性能。要想解決因?yàn)榘l(fā)熱掉速的問(wèn)題,最常用的手段就是提高散熱效果,比如三星在970 Pro硬盤(pán)的主控設(shè)計(jì)就使用了更好的封裝,整個(gè)主控使用了金屬外殼封裝,提高了導(dǎo)熱性能。 當(dāng)然,更直接的手段還是加裝散熱片,所以大家可以看到各種M.2硬盤(pán)都開(kāi)始流行散熱馬甲了,影馳之前還推出了鐵甲戰(zhàn)將M.2硬盤(pán),使用了厚度驚人的散熱片,雖然樣子難看了點(diǎn),但是效果杠杠滴。 除了上面介紹的這些掉速原因,其實(shí)還有一些別的因素會(huì)影響SSD性能正常發(fā)揮,比如4K沒(méi)對(duì)齊、同步/異步閃存、AHCI/IDE模式等等,不過(guò)這些操作現(xiàn)在來(lái)說(shuō)并不是主要問(wèn)題了,以前是問(wèn)題主要還是SSD不普及,很多人不懂設(shè)置,而現(xiàn)在Windows系統(tǒng)自己就加入了很多SSD優(yōu)化設(shè)置,第三方工具對(duì)SSD的支持也到位了。 SSD硬盤(pán)的緩存結(jié)構(gòu):從DRAM Cache到SLC Cache 以上有關(guān)SSD掉速的內(nèi)容涉及到方方面面,不過(guò)對(duì)單個(gè)SSD硬盤(pán)來(lái)說(shuō),SSD掉速問(wèn)題沒(méi)那么復(fù)雜,下面我們要進(jìn)入正題了,先來(lái)看看現(xiàn)代SSD硬盤(pán)的基本結(jié)構(gòu): 不論SATA還是M.2硬盤(pán),它們的PCB布局都差不多,上面的M.2硬盤(pán)從左到右分別是DRAM緩存、主控及NAND閃存,其中主控及NAND閃存是必不可少的,DRAM緩存可以有也可以沒(méi)有,沒(méi)有的主要是低端SSD硬盤(pán),減少DRAM緩存可以降低成本,特別是過(guò)去兩年中DRAM內(nèi)存因?yàn)榇鬂q價(jià),低端SSD更加流行無(wú)DRAM緩存的方案,它們會(huì)用過(guò)HMB主機(jī)內(nèi)存緩存來(lái)彌補(bǔ)導(dǎo)致的性能損失。 對(duì)于高性能的SSD硬盤(pán),DRAM緩存不可少,因?yàn)榫退闶荄DR3緩存,其帶寬也能達(dá)到數(shù)GB/s甚至十幾GB/s,遠(yuǎn)高于SSD閃存的性能,對(duì)提升性能還是很有幫助的,現(xiàn)在三星等公司在高端SSD上已經(jīng)開(kāi)始使用DDR4-2133做緩存了。 至于DRAM緩存容量,容量少的有128MB,256MB、512MB比較常見(jiàn),隨著SSD硬盤(pán)越來(lái)越大,1GB緩存的也不少見(jiàn)了,一般來(lái)說(shuō)是1TB閃存配1GB DRAM緩存,越高越好。 DRAM緩存是現(xiàn)代SSD硬盤(pán)的第一道緩存結(jié)構(gòu),從硬盤(pán)上讀取數(shù)據(jù)首先就是看DRAM緩存中有沒(méi)有需要的數(shù)據(jù),如果有,那就先用這里的,所以速度會(huì)很快,如果緩存中沒(méi)有再去NAND閃存中尋找,速度就是NAND閃存的了,相對(duì)來(lái)說(shuō)慢很多。 總的來(lái)說(shuō),DRAM緩存對(duì)SSD硬盤(pán)來(lái)說(shuō)是錦上添花的,從DRAM緩存到NAND閃存也是存在掉速的,不過(guò)通常這種調(diào)速大家是感受不出來(lái)的,畢竟緩存容量還是太小了,很容易就超出。 SSD硬盤(pán)大部分情況下還是要依賴NAND閃存自身性能的,但我們都知道從SLC到MLC再到TLC及現(xiàn)在剛剛興起的QLC閃存,寫(xiě)入性能是不斷下降的,原始的TLC、QLC閃存性能非常難看,不加修飾的話QLC閃存寫(xiě)入性能可能都沒(méi)有100MB/s,HDD硬盤(pán)都比它快不是吹的。 但實(shí)際發(fā)售的TLC及QLC閃存硬盤(pán)中,不論SATA還是M.2接口的,性能都很強(qiáng)大,三星970 Evo這樣的產(chǎn)品中250GB版標(biāo)稱寫(xiě)入性能可達(dá)1500MB/s,但它就是使用了寫(xiě)入加速(Write Acceleration)技術(shù)之后的性能,實(shí)際性能大約是300MB/s,中間差了四倍性能。 SSD寫(xiě)入加速技術(shù)是個(gè)通用稱呼,常見(jiàn)的方案是SLC Cache(SLC緩存),它的意義就是字面意思——用SLC當(dāng)緩存提速,因?yàn)镾LC閃存是性能最好的。 在MLC閃存時(shí)代,SLC緩存技術(shù)還不是必要的,三星970 Pro都沒(méi)有使用這樣的技術(shù),而970 EVO就有,但SLC緩存也不是沒(méi)有代價(jià)的,因?yàn)镾LC只能存儲(chǔ)1位數(shù)據(jù),TLC是3位數(shù)據(jù),QLC是4位數(shù)據(jù),在TLC/QLC閃存上使用SLC緩存意味著是犧牲容量換取性能,這是一個(gè)魔鬼交換,說(shuō)的難聽(tīng)點(diǎn)就是你選擇X味的巧克力還是巧克力味的X一樣,都不是最好的選擇,但不得不選。 用SLC緩存可以提升SSD的寫(xiě)入速度,讓它看起來(lái)很NB,但是這意味著要損失一部分空間,具體多大要看廠商選擇的方案,如果全盤(pán)方案的話就意味著只有1/3甚至1/4的容量可用。 用SLC緩存就好比過(guò)山車(chē) 更關(guān)鍵的是,即便用了SLC緩存,一旦寫(xiě)入數(shù)據(jù)超過(guò)了緩存容量,SSD性能還得現(xiàn)原形,這個(gè)時(shí)候就是SSD硬盤(pán)掉速了,因?yàn)槌^(guò)緩存加速空間之后就不得不使用原始TLC/QLC性能,這個(gè)時(shí)候會(huì)很難看,寫(xiě)入速度100MB/s左右很正常。 當(dāng)然,SLC緩存帶來(lái)的額外好處也不是沒(méi)有,那就是意外斷電時(shí)損失更小,畢竟SLC是存儲(chǔ)1位數(shù)據(jù)的。 具體的每家SSD廠商中,SLC Cache技術(shù)有不同的叫法,三星叫做TurboWrite,SanDisk叫做nCache,美光有Dynamic Write Acceleration動(dòng)態(tài)緩存加速技術(shù)。這些技術(shù)實(shí)際上也是分為不同類型的,有全盤(pán)SLC Cahce的,也有部分空間做緩存的,其中全盤(pán)模擬效果最好,但對(duì)空間浪費(fèi)是最大的,所以現(xiàn)在SLC Cache技術(shù)普遍是劃出部分空間,具體選擇多少空間是廠商綜合考慮的,10%以下可以,20%也可以。 另外,不論全盤(pán)還是部分空間模擬,實(shí)際上還有動(dòng)態(tài)及靜態(tài)SLC Cache之分,這兩種技術(shù)其實(shí)也是各有優(yōu)劣,美光的DWA就是動(dòng)態(tài)寫(xiě)入緩存加速技術(shù),它的好處就是在用戶用了不同容量之后都可以保持較好的加速性能。 總之,在SLC緩存上各大廠商有自己的選擇,緩存空間、緩存分配、加速策略都有可能是不一樣的,技術(shù)路線沒(méi)有高下之分,但不論哪種,SLC緩存空間用盡之后,SSD的性能都會(huì)暴露出應(yīng)有的水平,那就是TLC/QLC原始性能。 就是這一點(diǎn),SSD硬盤(pán)如果使用的空間越多,那么剩余空白容量就越少,這對(duì)緩存加速越不利,所以性能就越低,這也是很多人使用SSD硬盤(pán)感覺(jué)越用越慢的根源,常說(shuō)的掉速就是這么來(lái)的。 對(duì)于SSD掉速問(wèn)題,除了特定問(wèn)題導(dǎo)致的之外,如果是因?yàn)榫彺嬗帽M而掉速,那還真沒(méi)什么好辦法,除非不怕倒騰數(shù)據(jù)的麻煩,經(jīng)常把SSD硬盤(pán)安全擦除一下。 如果對(duì)掉速問(wèn)題很介意,現(xiàn)在的選擇只有購(gòu)買(mǎi)MLC硬盤(pán)或者購(gòu)買(mǎi)大容量SSD,容量不低于1TB,越大越好。 |
|