大家還記得LSI吧:)
首先請原諒我又懷個舊。從LSI到Avago再到Broadcom的併購史就不詳細講了,對這些故事不熟的朋友可以簡單參考下圖。
2016年9月我寫過《RAID卡未來之路:除了NVMe還有啥?》,如今回過頭來看看當年的Roadmap,哪些產品沒有出來,想想取消的原因也有點意思。
上圖就是新一代PCIe 4.0 RAID卡中的MegaRAID9560-16i,16個內部SAS/SATA/NVMe三模HDD/SSD接口。卡的右端連接器和上一代有點變化,從x4 lane的SFF-8643換成了x8 lane的SFF-8654——後者其實我們已經在伺服器主板和熱插拔背板上見過不少了,比如下圖:
從PCIe 3.0 x16到PCIe 4.0 x8
下面我們主要圍繞SAS/NVMeRAID卡和HBA的主控晶片來討論,畢竟大的伺服器品牌往往不會直接用Broadcom自有品牌的卡,而規格參數和性能基本上還是決定於晶片。
上面這款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的新一代IOC和RoC(RAIDon Chip),從SAS3808開始全部都是雙核ARM A15 1.6GHz了,從L1和L2 Cache來看架構變化應該不大。最主要的一點是主機和設備端接口都支持PCIe 4.0,下面看看性能指標。
從215萬IOPS判斷非原生NVMe RAID?
等繼續講到下面的表格,其實上圖中的300萬4K隨機讀/隨機寫IOPS,8埠(設備端)的SAS3808應該是達不到的。稍後大家就會明白怎麼回事,Broadcom的資料複製、粘貼出點小錯誤我倒是並不意外。13,700 MB/s的帶寬相對於接近16GB/s的x8 PCIe Gen4理論帶寬來說,效率也還算可以了。
上圖中寫PCIe Port(Lanes)的「12 Gb/s」速率,請大家自己腦補糾正成16 Gb/s。大家注意下這裡寫SAS3808的4K隨機讀IOPS是215萬,比同一份資料裡的300萬要低哦?
再看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架構的限制吧?
如上圖,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。