瞭解 SSD Over Provisioning (OP)

超容量快取百分比:

實體容量 - 使用者容量


使用者容量

超容量快取百分比公式。

固態硬碟 (SSD) 通常與機械傳統硬碟 (HDD) 在實體尺寸 (例如長、寬和高) 和外部傳輸介面 (例如 SATA 或 SAS 傳輸介面) 上相當類似,但是固態硬碟內部的基礎作業和元件,卻和傳統硬碟所採用的旋轉磁盤式設計差別很大。

當 SSD 組裝完成後,製造商可在進行韌體程式設計時,額外保留一部分硬碟儲存容量做為超容量快取 (OP) 。 超容量快取可提升效能及增加 SSD 的耐用性,有助於硬碟延長壽命,因為 SSD 控制器具有更多 Flash NAND 儲存空間,可緩解 NAND Flash 壽命期間的損耗情形。

實際容量使用者容量超容量快取比例 (%)應用等級
64GB 60GB 7% 讀取密集型
96GB 90GB 7% 讀取密集型
128GB 120GB 7% 讀取密集型
128GB 100GB 28% 較為密集寫入型
256GB 240GB 7% 讀取密集型
256GB 200GB 28% 較為密集寫入型
512GB 480GB 7% 讀取密集型
512GB 400GB 28% 較為密集寫入型
1024GB 960GB 7% 讀取密集型
1024GB 800GB 28% 較為密集寫入型
2048GB 1800GB 14% 讀取密集型
2048GB 1600GB 28% 較為密集寫入型
依據儲存容量與應用等級所決定的超容量快取

應用程式可能是讀取密集型,例如典型用戶端作業量,使用者一般會執行 20% 寫入到 80% 讀取。使用儲存裝置以用於讀取快取的企業應用程式將是讀取密集型;如果這些應用程式將更多資料寫入儲存裝置,則會是較為密集寫入型。

固態硬碟製造商所設定的超容量快取容量大小可能不同,這要視固態硬碟的應用等級和總 NAND 快閃記憶體儲存容量而定。

具備較大儲存容量和不同應用等級的硬碟,為了有效管理更多 NAND 快閃記憶體所需的資源需求,如使用垃圾資料回收功能、備用區塊、和增強資料保護功能,往往會配置較大比例的超容量快取容量,

此 OP 容量的儲存容量無法讓使用者存取,而主機作業系統也看不見此容量。嚴格保留供 SSD 控制器使用。

超容量快取 (OP) 的優點

OP 如何提升 SSD 效能

每個 NAND 快閃記憶體晶片是由多個區塊所構成,每個區塊則進一步包含許多分頁檔。

NAND 快閃記憶體能以分頁檔為單位來讀寫,但只能以區塊為單位進行抹寫。

若需要在區塊中某個已程式化的分頁檔上修改或抹寫某一頁,必須先將整個包含許多分頁檔的區塊內容讀取至暫存記憶體中再抹寫,才能將新的區塊內容程式化至相同的區塊位址。

只有當分頁檔已經處於空白狀態時,才能跳過這種冗長的讀取-修改-寫入流程,直接將整頁寫入 NAND 快閃記憶體的區塊。

藉由超容量快取保留大量空白區塊將有助於維持一致的效能,特別是在顯現出最高寫入放大因數 (WAF) 的隨機存取情況下。{{Footnote.N52105}}

OP 如何提升 SSD 耐用性

想瞭解為何要在固態硬碟上配置超容量快取,此配置對 SSD 控制器又有哪些好處,就必須先探討固態硬碟的典型作業方式,以及非揮發性 NAND 快閃記憶體的限制。

根據每個 NAND 快閃晶片抹寫 (P/E) 耐用性,每個晶片的產品壽命都是有限的,這是 NAND 快閃記憶體製造商在製程中所設定的特性,原因是每在 NAND 快閃晶片上執行一次抹寫功能,就會削減晶片可靠儲存的能力,因而可能對資料的完整性造成威脅。

然而,隨著 NAND 幾何形狀從 2D 移轉至 3D,NAND 耐用性也會隨之提升,晶粒密度也會增加但生產成本會降低,使得 SSD 更加經濟實用。

總結來說,影響固態硬碟耐用性的三個主要因素如下:
  • NAND 快閃記憶體抹寫耐用性,以及與排列組合相關的讀取/抹寫差異 (此案例中的排列組合差異包含2D與3D堆疊技術)
  • SSD 儲存容量
  • SSD 控制器能力與效率 (垃圾資料回收功能、寫入放大、區塊管理、平均抹寫和錯誤校正碼)。

透過超容量快取 (OP) 維持效能與耐用性

為了避免固態硬碟被填滿無效的分頁檔,SSD 控制器垃圾資料回收功能會將超容量快取當做臨時的工作空間,以管理排定的有效分頁檔合併工作,並回收填滿無效 (或已刪除) 分頁檔的區塊。

接著會將任何回收的分頁檔/區塊加入超容量快取儲存容量中,以便進行 SSD 控制器的寫入作業並在尖峰流量負載期間發揮出最大的效能,因為讀取、抹寫和修改所有的有效分頁檔、並將其重新寫入已部分填滿無效分頁檔的區塊,會影響到效能,也就是拖慢速度。

垃圾資料回收功能獨立運作而不受作業系統影響,而且會在低活動期間自行啟動、定期自動執行,或藉由發出個別的 ATA 資料集管理執行 TRIM 指令,以排定回收垃圾的時間。

如果透過超容量快取儲存容量而隨時都有空白區塊可用,有助於持續在 NAND 快閃記憶體上有效地進行平均抹寫,因為 SSD 控制器可聰明地將寫入作業均勻地重新分散於所有 NAND 快閃記憶體晶片之間,而不影響固態硬碟在尖峰流量負載期間的整體效能。

此外,還可藉由回收任何無效分頁檔和未使用的儲存容量,將 ATA Data Set Management TRIM 指令新增至 SSD 的可用空間。

格式化的硬碟容量超容量快取尺寸連續讀/寫頻寬穩定狀態隨機 4k 讀取/寫入TBW (JEDEC 企業{{Footnote.N52105}})DWPD{{Footnote.N37134}}
480GB (DC500R) 7% 550/500MB/s 98,000/12,000 IOPS 438 0.5
480GB (DC500M) 32% 555/520MB/s 98,000/58,000 IOPS 1139 1.3
960GB (DC500R) 7% 555/520MB/s 98,000/20,000 IOPS 876 0.5
960GB (DC500M) 32% 555/520MB/s 98,000/70,000 IOPS 2278 1.3
1,920GB (DC500R) 7% 555/520MB/s 98,000/24,000 IOPS 1752 0.5
1,920GB (DC500M) 32% 555/520MB/s 98,000/75,000 IOPS 4555 1.3
3,840GB (DC500R) 7% 555/520MB/s  98,000/28,000 IOPS  3504  0.5
3,840GB (DC500M)  32% 555/520MB/s  98,000/75,000 IOPS 9110  1.3
依據儲存容量與應用等級所決定的超容量快取

為了瞭解 OP 的效果,我們可以透過檢視 Kingston 企業 SSD、DC500R SSD 並以圖例說明。這些 SSD 配備高達 3.84TB 的容量,而且使用者可透過Kingston SSD Manager 工具以調整超容量快取空間。我們可以調整7%或更高的 OP 等級來檢視效能及耐用性的表現。

比較每個配對容量時,我們可以檢視下列內容:
  1. 每個配對中較大容量的硬碟 (較少 OP) 可維持相同的傳輸速度 (頻寬),但隨機每秒寫入 IO (IOPS) 則會大幅降低。表示較低 OP 的硬碟可在讀取密集型應用程式中表現良好,但在寫入密集型應用程式 (與 32% OP 的硬碟相較之下) 中執行速度則較緩慢。
  2. 較低超容量快取也代表每個硬碟上的資料寫入總位元組數 (TBW) (以 TB 為單位) 較低。OP 百分比越高,SSD 就越持久。960GB DC500R 可容納高達 876TB 的寫入資料,其中 800GB DC500R 可達到 860TBW。Kingston 會以 JEDEC 作業量作為TBW數字的來源參考{{Footnote.N52105}}。
  3. 將 TBW 數字換算為保固期間的硬碟每日寫入量 (DWPD) 時,我們可以看到 32% OP 的硬碟幾乎可達到每天兩倍的寫入量。這也是建議將 32% OP 用於較為密集寫入型應用程式的原因。