none
window 2012/2016 文件服务器 ,双路服务器,CPU负载只在节点1上 RRS feed

  • 问题

  • 各位专家:

    我这边有一个长期困扰我的问题,先说一下基本的环境,硬件是双路联想SR550服务器,双CPU,存储为光纤直连IBM存储,软件为windows server 2012或者windows server 2016,采用微软自带文件服务器搭建SMB文件共享供用户使用,没有其他的应用。

    然后说一下问题现象:在资源监视器中及任务管理器中,发现CPU的负载均在NUMA节点0上,节点0负载100%,而节点1上负载趋于0,操作系统电源选项已经设置成高性能。


    • 已编辑 nicesky 2019年3月29日 4:38
    2019年3月29日 1:35

全部回复

  • Hi ,

    据我所知,此行为是正常的。

    在NUMA系统中,CPU被安排在称为节点的较小系统中。每个节点都有自己的处理器和内存,并通过缓存一致的互连总线连接到更大的系统。系统尝试通过在与正在使用的内存位于同一节点的处理器上调度线程来尝试提高性能。

    因此,由于引用的内存访问位置,有时CPU使用率可能不均匀。不均衡的CPU使用率对于应用程序性能会更好,因为在大多数情况下,内存访问是应用程序性能的瓶颈,而不是CPU。

    您可以参考以下关于NUMA的文档:

    NUMA Support

    此致

    Candy


    Please remember to mark the replies as an answers if they help.
    If you have feedback for TechNet Subscriber Support, contact tnmff@microsoft.com   

    2019年4月1日 3:23
    版主
  • 按照您的说法,我的理解是如果内存使用比例很少,比如我的这些服务器就使用了14%的内存,那么在numa系统里面,这些内存就应该是节点0的CPU可以访问,而节点1的CPU是不能访问的,所现象就是节点0满负荷,而节点1负荷基本为0?

    第二个问题,如果我需要改变这个现象,让节点1的CPU也可以访问目前使用的14%的内容,让节点1的 CPU负荷增加上去,如何进行设置或者调整?

    因为我判断CPU性能成为了我服务器性能的瓶颈

    2019年4月1日 15:45
  • 在类似的应用环境下,windows server 2008 R2 没有出现类似的现象,我查了一下资料也是支持NUMA的,从windows server 2012才开始发现类似的问题,同时如果使用其他其他应用会平衡CPU负载,比如SQL或者CPU测算软件,即使在内存负荷比较低的时候,CPU也可以做到2个节点负载,但是做文件共享服务器时CPU使用偏向使用一个节点,难道是文件服务器是属于单线程应用吗?
    2019年4月2日 2:12
  • Hi ,

    >>从windows server 2012才开始发现类似的问题,同时如果使用其他其他应用会平衡CPU负载,比如SQL或者CPU测算软件,即使在内存负荷比较低的时候,CPU也可以做到2个节点负载

    您是已经具体测试过这个情况吗?很抱歉,由于我们实验环境的限制,我们无法为您进行试验测试。我会尽最大的努力为您找到相关资料。

    根据我查询到的资料,server 2012 SQL似乎也是存在CPU负载不均衡的情况,可以参考以下的链接:

    SQL Server 2012 NUMA Node Imbalance

    请注意:此链接非微软托管,链接随时可能失效,微软无法保证信息的准确性。

    SQL Server 2012 SP4 Enterprise Edition NUMA Node imbalance

    NUMA node balancing algorithm

    此致

    Candy


    Please remember to mark the replies as an answers if they help.
    If you have feedback for TechNet Subscriber Support, contact tnmff@microsoft.com   

    2019年4月2日 3:12
    版主
  • 做过专门的测试,硬件环境为 CPU5118*2  内存64G,系统盘SSD,数据存储为lenove 5030 32G缓存,日常使用情况:磁盘队列0.1以下,网络占用上下约500Mpbs左右,内存占用14%,CPU1 占用100%,CPU2占用 0%,这个是单纯的SMB共享应用,如果再使用一个其他调用CPU的程序或者软件,CPU2占用马上上升,关掉软件,CPU2占用马上下降恢复到0%,CPU1始终保持100%的状态,就是说SMB文件服务器只使用了CPU1,没有使用CPU2
    2019年4月2日 10:09