存儲I/O性能對比:Intel Xeon vs. AMD EPYC
本文轉(zhuǎn)載自微信公眾號「企業(yè)存儲技術(shù)」,作者唐僧 huangliang。轉(zhuǎn)載本文請聯(lián)系企業(yè)存儲技術(shù)公眾號。
從表面上來看,單路EPYC二代(代號ROMA)處理器就能提供128 lane PCIe 4.0,如果想直連24個U.2 NVMe SSD都不難。看上去這應(yīng)該是個不錯的存儲服務(wù)器方案?因?yàn)橹钡酱朓ce Lake-SP的第三代Xeon Scalable才開始將PCIe控制器升級到64 lane PCIe 4.0,不僅推出較晚,并且只有在雙插槽時其I/O擴(kuò)展性才接近AMD。
然而事實(shí)真的如此嗎?挺早之前我就聽朋友提到過,AMD服務(wù)器的SSD存儲性能沒有想象中那樣好,但一直沒拿到具體測試數(shù)字。直到最近看了Los Alamos National Laboratory(阿拉莫斯國家實(shí)驗(yàn)室)Brad Settlemyer的分享《Practical Computational Storage: Performance, Value, and Limitations》——里面的幾頁內(nèi)容。
在米國能源部下屬搞HPC,使用Lustre文件系統(tǒng)再正常不過了。本文討論的性能對比,就是運(yùn)行在Lustre OST節(jié)點(diǎn)底層的ZFS本地文件系統(tǒng)。
為什么上圖中只有Intel平臺標(biāo)明了“雙插槽”?我理解應(yīng)該是因?yàn)锳MD CPU核心足夠多,并且其不跨插槽的I/O效率可能更好。
如上表,最高的虛線是RAW NVMe寫性能,AMD第一代EPYC、第二代EPYC和Intel Xeon Platinum相差無幾。
玩過ZFS的朋友可能知道,ZFS的Checksum(校驗(yàn)和)對文件系統(tǒng)數(shù)據(jù)完整性很有幫助,同時CPU消耗也不小。當(dāng)測試ZFSw/Chenksum性能時,AMD第一代EPYC只跑到不到原始RAW NVMe SSD的一半(低于10,000MB/s);AMD第二代EPYC有較大改善,不同線程數(shù)最高的表現(xiàn)在15,000MB/s左右;而Xeon Platinum則能跑到更接近RAW NVMe寫的水平。
然后是ZFS w/Chenksum+RAIDZ1和RAIDZ2,雖然理論上ZFS RAID的整條帶寫產(chǎn)生的懲罰較小,但性能有下降還在情理之中。Intel& AMD三款服務(wù)器平臺的性能次序與前面的w/Chenksum基本保持一致。總體上Xeon Platinum的RAID開銷比二代EPYC要小一點(diǎn)。
性能對比簡要分析
測試結(jié)果沒有列出更多硬件細(xì)節(jié)信息,我也只能粗略討論下。是什么原因?qū)е翧MD服務(wù)器在這個存儲軟件測試的效率上低一些呢?我覺得一方面可能是PCIe I/O親和作用,這一點(diǎn)在第一代EPYC時我曾提到過。雖然后來內(nèi)存控制器和PCIe控制器都集中到I/O Die上了(如下圖),不過既然內(nèi)存仍有片上NUMA效應(yīng),我想PCIe應(yīng)該也是類似的情況。
聽說Intel代號Sapphire Rapids的下一代Xeon Scalable也是多Die封裝,到時有機(jī)會可以再留意下效果如何。
另一點(diǎn)就是Intel的軟件生態(tài),包括ISA-L在內(nèi)的各種指令集。由于AMD服務(wù)器只是在近2-3年才重新崛起,傳統(tǒng)存儲軟件歷年的發(fā)展中對IntelCPU優(yōu)化更好也是正常的。
由于R.A.S.的需求,數(shù)據(jù)中心里跑的企業(yè)級軟件都會先求穩(wěn),寧可犧牲一些迭代速度;同時歷史代碼的傳承和經(jīng)驗(yàn)也非常重要。所以如今AMDEPYC還達(dá)不到桌面級ZenCPU的市場占有率,不過能看到“牙膏擠得更快”總不是個壞事情:)
參考資料https://www.snia.org/sites/default/files/PM-Summit/2021/snia-pm-cs-summit-Settlemyer-Practical-CS-2021.pdf