本文内容非商业用途可无需授权转载,请务必注明作者及本微信公众号,以便更好地与读者互动。
在上一篇《
TPC-C
性能翻倍:
Optane DIMM
持久内存
+SQL Server 2019
》中,我和大家讨论了
Intel OptaneDC Persistent Memory
(傲腾数据中心持久内存,代号
AEP
)在
App Direct
模式下的性能测试。对于传统关系型数据库来说,微软
SQL Server 2020
已经实现了
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/content/dam/digitalmarketing/vmware/en/pdf/techpaper/performance/IntelOptaneDC-PMEM-memory-mode-perf.pdf
https://principledtechnologies.com/Dell/PowerEdge-R740xd-with-Intel-Optane-DC-persistent-memory-science-1019.pdf
https://principledtechnologies.com/Dell/PowerEdge-R740xd-with-Intel-Optane-DC-persistent-memory-1019.pdf
扩展阅读《
IntelOptane DC
持久化内存性能测试、数据库应用优化
》
《
性能修正:
Intel Optane DC
持久化内存更多测试
》
注
:
本文只代表作者个人观点,与任何组织机构无关,如有错误和不足之处欢迎在留言中批评指正。
进一步交流
技术
,
可以
加我的
微信
/
QQ
:
490834312
。
如果您想在这个公众号上分享自己的技术干货,也欢迎联系我:)
尊重知识,转载时请保留全文,并包括本行及如下二维码。
感谢您的阅读和支持!《企业存储技术》微信公众号:
HL_Storage
长按二维码可直接识别关注
历史文章汇总
:
http://chuansong.me/account/huangliang_storage