我如何知道是否应该在运行较旧应用程序的VM上禁用虚拟NUMA?


9

从VMware的文档中:

虚拟NUMA拓扑可用于硬件版本8的虚拟机,并且当虚拟CPU的数量大于八个时,默认情况下已启用。您还可以使用高级配置选项来手动影响虚拟NUMA拓扑。

假设我有一个已分配8个CPU的VM,即它正在运行的Virtual NUMA。如果我在服务器上运行了一个旧的,不支持NUMA的应用程序,它会不会运行得很差,或者至少不会像在非V-NUMA模式下那样运行不佳?

我假设这样启用了V-NUMA,因为如果应用程序供应商建议使用8个或更多内核,则该软件很可能会识别NUMA。还是有许多支持多核但不支持NUMA的应用程序?

我如何确定由这个可能的问题引起的瓶颈?

编辑:是否有想到vCenter中有一个度量标准来监视远程NUMA调用?


4
我删除了建议的答案,因为我认为这不是您要的内容。如果我对您的主机配置有更多信息,我也许可以提供更多帮助。我个人的观点是,总体而言,vNUMA不会损害非数字应用程序,但这不仅仅只是一种意见。有很多变量会影响VM性能,在使用VMware的这些年里,我从未发现vNUMA是导致性能问题的元凶。
Stewpudaso '16

Answers:


1

文章:“ NUMA深入研究第1部分:从UMA到NUMA ”建议“ Intel内存延迟检查器v3.5 ”,而较短的文章“ VMware vSphere-为什么检查NUMA配置如此重要! ”(从那里获得了该链接)解释:

“主要的收获是,cpu —当cpu可以访问其本地内存时,内存访问始终是最快的。NUMA节点是CPU /内存对。通常,CPU插槽和最近的内存库构成了NUMA节点。每当CPU需要访问另一个NUMA节点的内存时,它就不能直接访问它,而是需要通过拥有该内存的CPU来访问它。”

因此,在启动VMM并分配vNUMA之前,请正确配置NUMA,为每个CPU有足够的内存。

在VMware下,您可以使用esxtop,键入“ m”,“ f”和“ G”以启用NUMA信息。在此处阅读有关esxtop的更多信息:YellowBricks和VMWare上的古代文档:“ 解释esxtop统计信息 ”。

调整NUMA后,您可以使用Intel的工具测试vNUMA的分配是否未调用非本地内存。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.