本文内容非商业用途可无需授权转载,请务必注明作者及本微信公众号,以便更好地与读者互动。
在上一篇《TPC-C__性能翻倍:__Optane DIMM__持久内存+SQL Server 2019》中,我和大家讨论了Intel OptaneDC Persistent Memory(傲腾数据中心持久内存,代号AEP)在App Direct模式下的性能测试。对于传统关系型数据库来说,微软SQL Server 2019已经实现了PMEM-aware应用支持,数据库文件和日志文件都能直接放在OptaneDIMM上并以DAX字节寻址方式访问。当然从更大范围来看,Redis也能做到。
这次我还想从另一角度来写:除了性能,评价SCM是否算成功应用还要看成本效益(ROI)——无论替代内存还是SSD;当然前者还要多考虑一点写寿命。
本文给大家介绍的测试采用Memory Mode(内存模式),也就是给Optane DIMM充当内存,而传统DRAM做为Cache的应用。具体来说是在VMware HorizonView VDI(桌面虚拟化)平台上使用View Planner做的验证。
2年前我曾和朋友一起写过《_揭秘VDI存储测试:4节点SDS模拟12000虚拟桌面_》,评估的微软S2D(Storage Spaces Direct)分布式存储为全SSD + 100Gb/s RoCE,并且只是在该集群上跑存储负载而非超融合。而今天讲的则是真正看VDI虚机的承载能力。
重内存负载VDI测试:512GB“混合内存” vs. 384GB DRAM
这份参考测试报告来自VMware文档《_Intel Optane DC PersistentMemory “Memory Mode” Virtualized Performance Study_》,在本文结尾我会给出链接。
如上表,为了创建“重内存负载配置文件”,测试修改了View Planner标准的Workload Profile,在原有的4个应用软件中保留2个占用内存较多的Office和Chrome浏览器,同时将Think Time增加到15秒。
View Planner测试中的3组操作中,Group A偏重交互,为CPU密集型;Group B为I/O密集型,适合本次的内存测试。
上表中右边的配置,相当于用512GB DCPMM__换掉了左边的192GB DRAM__,成本上或许还能省点吧?
上面是对比测试的硬件配置。左边为DRAM系统,也就是384GB传统内存平台;右边则是4条128GB Optane DCPMM(每CPU插槽256GB),一共512GB系统可见内存容量,另有12条16GB DRAM共192GB做为Cache。
具体到每个Windows 10(企业版1803)桌面虚拟机的配置为4个vCPU核心、12GB内存。
扩展阅读《VDI__性能测试:__Win10__受漏洞补丁影响小于Win7》
《_CPU漏洞补丁复盘测试:Win10 1803性能问题有解?_》
在View Planner测试的Group B操作中,QoS的许可阈值为6秒,延时小于这一指标的虚拟机密度为有效成绩。
对于384GB DRAM内存系统来说,跑45个12GB内存的桌面实际上已经是超配(over provisioning)了。测试中超过这一水平就会触发balloon,导致较高的客户机内存交换,甚至一些有限的主机(页面文件)交换。由于SSD的延时达不到要求,限制了虚拟桌面密度提升。
再看512GB Optane持久内存的系统,达到55个12GB内存的桌面也属于超配了,在6秒以内延时没有达到60虚机密度可能还有别的瓶颈(可参考下面我介绍的另一个测试)。
廉价大容量内存提高CPU利用率
上面这个测试平台引用自Principled Technologies的报告《_Give your VDI users thememory they need with server technology from Dell EMC and Intel_》,其中用于对比的PowerEdge R730xd和R740xd服务器,具体内存配置区别如下:
这里Optane DIMM的配置又比较豪华了——12条128GB组成1.5TB + DRAM Cache的系统。384GB DRAM对比左边的256GB看似有点不公平?但别忘了上一代R730xd使用的Xeon E5 v4是每CPU 4个内存通道,而R740的Xeon SP是每CPU 6通道,有一个最佳内存带宽配置的区别。
扩展阅读:__《_DellPowerEdge R740xd解析:服务器只看参数那就错了_》
《_IntelXeon SP服务器架构曝光:Apache Pass、QuickAssist_》
这里测试的重内存负载桌面,每个虚机分配16GB内存。256GB DRAM内存的R730xd服务器可支持到20个桌面;384GB DRAM的R740xd达到30桌面密度;至于Memory Mode下的大容量Optane持久内存,虚机密度达到了75个。
这个图表是上述测试的CPU、内存资源占用情况。在没有加入Optane DIMM时都是内存先用满而CPU只有50%左右(和桌面类型有关);最右边的配置则是1.5TB“混合内存”利用接近80%、CPU超过90%。
关于性价比、3D XPoint持久内存的寿命
那么可能有朋友会问:能否配一台1.5TB DRAM的VDI服务器呢?技术上当然可行,但您计算过每桌面的平均成本会达到多少吗?
同时也应该指出,“重内存负载桌面”应该只占VDI需求的一小部分,我听到更多情况是每虚机2GB(Win7)-4GB(Win10)多一些,图形设计类(工作站虚拟化)用途例外。所以在内存不配特别大的情况下,有时CPU就超配比较严重了。
至于3D XPoint的写入寿命,在这里我倒不是太担心。桌面虚拟机内存里的数据也分冷热,这也是为什么有些VDI敢于做内存超配的原因。正如本文测试,重内存负载虚机在使用Optane DIMM之后,保证了“混合内存”容量范围内的性能,而其中最热的数据主要由DRAM Cache来支撑访问。
记得在《Optane DIMM__写速度比SSD__慢?__内存接口可能并非完美》一文末尾,我曾指出“Optane DIMM的写寿命可能不总是770 DWPD那么理想,如果全换成64Byte访问会不会只有大约192 DWPD?” 单看这个数字只要应用合理在3-5年乃至更长时间内也写不坏吧。
一个有意思的现象是,人们都知道VDI用全闪存储性能好,但听说国内实际项目中SSD+HDD混合还是更多虚拟桌面用户的选择。“磁盘存储”如此,Optane + DRAM不也是类似的方式吗?为了性价比,即使你还没有分层,可能也走在通向分层的路上了:)
最近几年,我认为影响Optane持久内存普及的关键因素还是价格。我也希望Micron的3D XPoint Memory产品和更多厂商的SCM技术能够涌入市场,有竞争才能降低采购成本,把蛋糕做大。
参考资料
https://www.vmware.com/conten...
https://principledtechnologie...
https://principledtechnologie...
扩展阅读《_IntelOptane DC持久化内存性能测试、数据库应用优化_》
《_性能修正:Intel Optane DC持久化内存更多测试_》
推荐阅读
本文转载自企业存储技术微信公众号,[原文链接点这里]。
注:本文只代表作者个人观点,与任何组织机构无关,如有错误和不足之处欢迎在留言中批评指正。 进一步交流技术可以加我的微信/QQ:490834312。
尊重知识,转载时请保留全文,并包括本行及如下二维码。感谢您的阅读和支持!《企业存储技术》微信公众号:HL_Storage,也欢迎关注企业存储技术极术专栏,定期更新。