PCIe 4.0 SAS+NVMe RAID/HBA卡:最高讀IOPS 300萬、寫24萬

PCIe 4.0 SAS+NVMe RAID/HBA卡:最高讀IOPS 300萬、寫24萬

大家還記得LSI吧:)

首先請原諒我又懷箇舊。從LSI到Avago再到Broadcom的併購史就不詳細講了,對這些故事不熟的朋友可以簡單參考下圖。


PCIe 4.0 SAS+NVMe RAID/HBA卡:最高讀IOPS 300萬、寫24萬

2016年9月我寫過《RAID卡未來之路:除了NVMe還有啥?》,如今回過頭來看看當年的Roadmap,哪些產品沒有出來,想想取消的原因也有點意思。

2016年11月我又寫了《首款SAS/SATA/PCIe三模RAID發佈:ARM替代PowerPC》。這一代產品如今已經支撐了3-4年,是時候隨著PCIe 4.0接口更新一下了。

PCIe 4.0 SAS+NVMe RAID/HBA卡:最高讀IOPS 300萬、寫24萬

上圖就是新一代PCIe 4.0 RAID卡中的MegaRAID 9560-16i,16個內部SAS/SATA/NVMe三模HDD/SSD接口。卡的右端連接器和上一代有點變化,從x4 lane的SFF-8643換成了x8 lane的SFF-8654——後者其實我們已經在服務器主板和熱插拔背板上見過不少了,比如下圖:

PCIe 4.0 SAS+NVMe RAID/HBA卡:最高讀IOPS 300萬、寫24萬

這張照片引用自《Dell PowerEdge R640:NVMe直連、NDC網卡、PERC10一覽》

從PCIe 3.0 x16到PCIe 4.0 x8

下面我們主要圍繞SAS/NVMeRAID卡和HBA的主控芯片來討論,畢竟大的服務器品牌往往不會直接用Broadcom自有品牌的卡,而規格參數和性能基本上還是決定於芯片。

PCIe 4.0 SAS+NVMe RAID/HBA卡:最高讀IOPS 300萬、寫24萬

上面這款SAS3616W芯片幾年前我還沒介紹過,嚴格說它只算Tri-Mode三模IOC控制器的“半代升級”。因為之前SAS34xx/35xx的PCIe 3.0 x8主機接口,連接SSD特別是NVMe數量多了之後實在是個瓶頸,於是後來就有了這款PCIe 3.0 x16 SAS3616W。

請注意,之前用於HBA(不帶緩存,非硬件RAID)卡的IOC芯片只是單核ARMA15 1.2GHz,最近的新品就不同了。

SAS/SATA HBA(IOC)的地位提升

PCIe 4.0 SAS+NVMe RAID/HBA卡:最高讀IOPS 300萬、寫24萬

如上圖,支持PCIe 4.0的新一代IOC和RoC(RAIDon Chip),從SAS3808開始全部都是雙核ARM A15 1.6GHz了,從L1和L2 Cache來看架構變化應該不大。最主要的一點是主機和設備端接口都支持PCIe 4.0,下面看看性能指標。

從215萬IOPS判斷非原生NVMe RAID?

PCIe 4.0 SAS+NVMe RAID/HBA卡:最高讀IOPS 300萬、寫24萬

等繼續講到下面的表格,其實上圖中的300萬4K隨機讀/隨機寫IOPS,8端口(設備端)的SAS3808應該是達不到的。稍後大家就會明白怎麼回事,Broadcom的資料複製、粘貼出點小錯誤我倒是並不意外。13,700 MB/s的帶寬相對於接近16GB/s的x8 PCIe Gen4理論帶寬來說,效率也還算可以了。

PCIe 4.0 SAS+NVMe RAID/HBA卡:最高讀IOPS 300萬、寫24萬

上圖中寫PCIe Port(Lanes)的“12 Gb/s”速率,請大家自己腦補糾正成16 Gb/s。大家注意下這裡寫SAS3808的4K隨機讀IOPS是215萬,比同一份資料裡的300萬要低哦?

PCIe 4.0 SAS+NVMe RAID/HBA卡:最高讀IOPS 300萬、寫24萬

再看16端口的SAS3816 IOC芯片,我們計算下3M 4KB IOPS換算成帶寬應該是11718MB/s,理論上8端口的SAS3808如果通過PCIe 4.0 Switch轉接SSD(最多連32個NVMe盤)的話,有可能達到這一水平。

幾款芯片的ARM處理能力一樣,那麼SAS3808實際的2.15M IOPS,是不是有點像受到8個12Gb/s SAS端口的帶寬限制呢?儘管從2016年正式發佈的三模RAID/HBA產品已經是SAS&NVMe兼容PHY,但還沒有說原生NVMe。現在的新品還依然受到MegaRAID SAS RAID架構的限制吧?

PCIe 4.0 SAS+NVMe RAID/HBA卡:最高讀IOPS 300萬、寫24萬

如上圖,SAS3916是用於硬件RAID卡的SAS/SATA/NVMe控制器,除了16端口還有8端口的SAS3908,這份資料終於把PCIe 4.0的速率寫對了。

同樣是在4年前的《服務器SSD RAID性能速查手冊》一文中,曾經以LSISAS3108芯片的Dell PERCH730p RAID卡舉例,當時在PassThrough直通模式可以測到100萬IOPS(8-12塊SAS SSD)。

那麼,如今的SAS3916如果RAID隨機讀真能跑到300萬IOPS也不錯了,畢竟現在企業級PCIe 4.0 NVMe SSD單盤有些已經達到100萬IOPS(如Intel SSD D7-5500和5600)。至於RAID 5隨機寫IOPS嘛,24萬隻能說比以前好,如果使用3D XPoint Memory介質的IntelOptane P4800X或者900P系列,單盤讀寫都有50萬IOPS。

擴展閱讀:《Intel Optane P4800X評測(1):好鋼如何用在刀刃上?》

《Optane SSD 900P評測(2):比拼4x閃存NVMe RAID0 》

傳統RAID技術的寫懲罰和性能,到了SSD時代之後一直是個難以突破的點;再加上RAID卡如果連接數量稍多的NVMe SSD,中間就需要通過不便宜的Switch芯片,上下行通道帶寬還不對稱。我們看到一線服務器大廠中,之前許多都放棄了三模芯片RAID/HBA卡對NVMe的支持(仍保持SAS/SATA),比如Dell PERC 10系列。不少用戶逐漸習慣了通過軟RAID/鏡像,或者分佈式存儲的副本/糾刪碼技術來保護數據,這也導致SAS HBA的出貨比例逐漸變多。

:SDS軟件定義存儲的2大代表產品,VMware vSAN和微軟S2D現在連接SAS/SATA盤都要求使用HBA而非RAID卡。還有一種情況優先使用SAS SSD,就像《單節點230虛擬桌面、6 GPU卡:AMDEPYC vSAN超融合測試&參考架構》插了6塊PCIe x16的NVIDIA Tesla T4,SAS HBA連接SSD可以節約PCIe信道。

擴展閱讀《4節點近160萬IOPS:SDS/超融合測試不能只看數字》

《NVMe SSD RAID的幾種玩法和測試》

那麼基於Broadcom PCIe 4.0新一代RAID控制芯片的服務器,接下來又有多少RAID卡設計會擁抱NVMe呢?

RAID卡的Secure Boot:保護Firmware更新

PCIe 4.0 SAS+NVMe RAID/HBA卡:最高讀IOPS 300萬、寫24萬

最後再陪大家看一個新特性。昨天我在《Intel 10代PC/筆記本安裝Win7踩坑記 & 驅動分享》裡也提到了Secure Boot,主板和PC廠商的BIOS中目前還允許關閉這個選項,主要是為了軟件兼容性和一些特殊需求/應用場景。

RAID/HBA卡沒這麼複雜,Secure Boot是為了保護其Firmware,只有經過Broadcom Signed簽名的固件才能被允許寫入。

具體到合作的服務器系統廠商,RAID/HBA卡只是一個組件,整體的Firmware安全要考慮的問題更多,包括BIOS、BMC等。有興趣的朋友可以參考下《Xeon SP服務器新技術:防代碼入侵從BIOS做起》。


注:本文只代表作者個人觀點,與任何組織機構無關,如有錯誤和不足之處歡迎在留言中批評指正。進一步交流技術,可以加我的QQ/微信:490834312。如果您想在這個公眾號上分享自己的技術乾貨,也歡迎聯繫我:)

尊重知識,轉載時請保留全文。感謝您的閱讀和支持!


分享到:


相關文章: