标签: numa

irqbalance 在现代硬件上还有用吗?

这个问题以前有人问过,但我相信世界已经改变了,足以再问一次。

irqbalance 在今天的系统上有什么用处,我们有支持 NUMA 的 CPU,在它们的核心之间共享内存?

运行irqbalance --oneshot --debug表明现代 VMware ESXi 环境中的虚拟来宾正在内核之间共享 NUMA 节点。

# irqbalance --oneshot --debug 3
Package 0:  numa_node is 0 cpu mask is 0000000f (load 0)
    Cache domain 0:  numa_node is 0 cpu mask is 0000000f  (load 0)
            CPU number 0  numa_node is 0 (load 0)           
            CPU number 1  numa_node is 0 (load 0)
            CPU number 2  numa_node is 0 (load 0)
            CPU number 3  numa_node is 0 (load 0)
Run Code Online (Sandbox Code Playgroud)

在这种情况下,irqbalance 将检测到它正在 NUMA 系统上运行,然后退出。这会干扰我们的进程监控。 …

linux performance redhat vmware-esxi numa

43
推荐指数
1
解决办法
6万
查看次数

Xeon Skylake SMP 出现意外且无法解释的缓慢(和异常)内存性能

我们一直在测试使用 2 个 Xeon Gold 6154 CPU 和 Supermicro X11DPH-I 主板和 96GB RAM 的服务器,并发现与仅使用 1 个 CPU(一个插槽空),类似的双核运行相比,内存存在一些非常奇怪的性能问题CPU Haswell Xeon E5-2687Wv3(用于本系列测试,但其他 Broadwell 性能类似)、Broadwell-E i7s 和 Skylake-X i9s(用于比较)。

当涉及到各种 memcpy 功能甚至内存分配时,预计具有更快内存的 Skylake Xeon 处理器的性能将比 Haswell 更快(在下面的测试中未涵盖,因为我们找到了一种解决方法),而是安装了两个 CPU ,Skylake Xeon 的速度几乎是 Haswell Xeon 的一半,与 i7-6800k 相比甚至更低。更奇怪的是,当使用 Windows VirtualAllocExNuma 分配 NUMA 节点进行内存分配时,虽然普通内存复制功能在远程节点上的性能预计比本地节点差,但使用 SSE、MMX 和 AVX 寄存器的内存复制功能性能更佳在远程 NUMA 节点上比在本地节点上更快(什么?)。如上所述,使用 Skylake Xeons,

我不确定这是主板或 CPU 上的错误,还是 UPI 与 QPI 的错误,或者以上都不是,但是 BIOS 设置的组合似乎对此没有用。在 bios 中禁用 NUMA(未包含在测试结果中)确实提高了所有使用 SSE、MMX 和 AVX 寄存器的复制功能的性能,但所有其他普通内存复制功能也会遭受很大损失。

对于我们的测试程序,我们使用内联汇编函数和_mm内部函数进行测试,除了汇编函数之外,我们使用 Windows 10 和 Visual Studio …

windows performance intel x86 numa

31
推荐指数
1
解决办法
2970
查看次数

如何检查服务器是否启用了 NUMA?

我的老板想知道 HP DL320 G5 是否启用了 NUMA。我试过在互联网上搜索,但找不到任何具体信息。

有谁知道这个服务器是否适合运行 NUMA 应用程序?

hp hp-proliant numa

11
推荐指数
2
解决办法
2万
查看次数

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

来自 VMware 的文档:

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

因此,假设我有一个分配了 8 个 CPU 的虚拟机——它正在运行虚拟 NUMA。如果我有一个旧的非 NUMA 感知应用程序在服务器上运行,它会不会运行得很差,或者至少不会像在非 V-NUMA 模式下那样好?

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

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

编辑:有没有想过 vCenter 中是否有用于监控远程 NUMA 调用的指标?

virtualization vmware-esxi vmware-vsphere numa

9
推荐指数
1
解决办法
331
查看次数

AMD 24 核服务器内存带宽

我需要一些帮助来确定我在服务器上的 Linux 下看到的内存带宽是否正常。这是服务器规范:

HP ProLiant DL165 G7
2x AMD Opteron 6164 HE 12-Core
40 GB RAM (10 x 4GB DDR1333)
Debian 6.0
Run Code Online (Sandbox Code Playgroud)

mbw在这台服务器上使用我得到以下数字:

foo1:~# mbw -n 3 1024
Long uses 8 bytes. Allocating 2*134217728 elements = 2147483648 bytes of memory.
Using 262144 bytes as blocks for memcpy block copy test.
Getting down to business... Doing 3 runs per test.
0   Method: MEMCPY  Elapsed: 0.58047    MiB: 1024.00000 Copy: 1764.082 MiB/s
1   Method: MEMCPY  Elapsed: 0.58012    MiB: 1024.00000 Copy: 1765.152 MiB/s …
Run Code Online (Sandbox Code Playgroud)

performance memory central-processing-unit hp numa

8
推荐指数
1
解决办法
1006
查看次数

Linux 中的 NUMA CPU 编号

我可以访问两台 NUMA 服务器。其中之一是 Dell R720,具有以下 CPU:

$ cat /proc/cpuinfo |grep Xeon|sort|uniq -c
     24 model name  : Intel(R) Xeon(R) CPU E5-2630L v2 @ 2.40GHz
Run Code Online (Sandbox Code Playgroud)

另一个是 HPE DL360 Gen8,具有以下 CPU:

$ cat /proc/cpuinfo |grep Xeon|sort|uniq -c
     24 model name  : Intel(R) Xeon(R) CPU E5-2630 0 @ 2.30GHz
Run Code Online (Sandbox Code Playgroud)

在我们拥有许多 HPE Gen9 服务器的工作中,我已经习惯了 CPU 编号(socket0、socket1、socket0 超线程、socket1 超线程)。HPE DL360 Gen8 似乎使用以下编号:

$ cat /proc/cpuinfo |grep physical.id|uniq -c
      6 physical id : 0
      6 physical id : 1
      6 physical id : 0
      6 physical id …
Run Code Online (Sandbox Code Playgroud)

linux multi-core numa

7
推荐指数
2
解决办法
8784
查看次数

numa 和任务集

我正在尝试使用 taskset 将一些进程分配给特定的 CPU。当我运行 taskset 时,似乎该命令已起作用,因为我收到了一条回复,说明了该进程的新关联设置。

但是,当我监视顶部输出时(我试图为其分配 cpu 的进程以高 cpu 百分比运行),我可以看到该进程仍在 cpu 之间切换,因此看起来任务集不起作用。

在网上搜索类似问题时,我看到 Red Hat 网站上的帖子https://access.redhat.com/knowledge/docs/en-US/Red_Hat_Enterprise_MRG/1.1/html/Realtime_Tuning_Guide/sect-Realtime_Tuning_Guide-Realtime_Specific_Tuning-Non_Uniform_Memory .html

这表明 taskset 在启用 numa 的系统上不起作用。是这种情况吗?我无法从其他任何地方找到这一点。

我正在使用的任务集命令是

taskset -pc 1-2 16723 pid 16723 的当前关联列表:0-7 pid 16723 的新关联列表:1,2

我也试过:

任务集-p 0x00000001 16723

操作系统版本为:

描述:Ubuntu 12.04.1 LTS 版本:12.04

内核版本:Linux hadoop 3.2.0-29-generic #46-Ubuntu SMP Fri Jul 27 17:03:23 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux

在我考虑使用 cgroups 之前,我会认为 taskset 至少可以为进程分配 cpu 亲和性?

谢谢,

还要确认我的主机上没有禁用 numa 来自http://martincarstenbach.wordpress.com/2012/04/27/little-things-i-didnt-know-difference-between-_enable_numa_support-and-numactl/

更多 /proc/cmdline

BOOT_IMAGE=/boot/vmlinuz-3.2.0-29-generic root=UUID=3221e122-b2fb-48b7-b761-16c57ef51f9a ro安静飞溅vt.handoff=7

确认这是在物理主机上。

linux operating-system numa

6
推荐指数
1
解决办法
2678
查看次数

DL380 Gen9 哪个处理器,对NUMA有什么影响

我们即将构建一个新服务器,我想知道可用选项对 NUMA 有何影响。

该系统将使用 Proliant DL380 Gen9 8SFF 构建,它有 2 个插槽,每个插槽有 12 个内存组。

我的问题是什么会更好地配置 2 CPU 的 6 核和内存均匀分布在 NUMA 节点或单个 12 核 CPU 和该 NUMA 节点中的所有内存。

我是否应该期望使用单个 Intel Xeon E5-2690Wv3 和 192GB(4 * 32GB + 4 * 16GB)内存出现带宽问题并选择 2 CPU 选项,或者我应该避免复杂性并选择单 CPU 解决方案并让所有 RAM 坐下在分配给该套接字的银行中?

不会使用虚拟化,机器将运行 Windows 2012 R2 和 SQL 2014,两者都支持 NUMA。

hardware hp-proliant sql-server numa

6
推荐指数
1
解决办法
1567
查看次数

将默认 numa 策略设置为系统范围内的“交错”

我知道可以将特定进程的 numa 模式设置为“交错”(请参见下面的注释)numactrl --interleave,但我想知道是否可以将其设为系统范围的默认值(又名更改“系统策略”) ”)。例如,是否有一个内核启动标志来实现这一点?

注意:这里我谈论的是跨 NUMA 节点交错分配的页面的内核行为,而不是 BIOS 级别的内存控制器行为设置,该行为设置跨 NUMA 节点交错缓存行

linux memory redhat central-processing-unit numa

5
推荐指数
1
解决办法
7574
查看次数

大量使用 RAM 时服务器计算速度变慢

我在非常特定的情况下遇到服务器速度下降的问题。事实是:

  • 1) 我使用计算应用程序 WRF (Weather Research and Forecast)
  • 2) 我使用 Dual Xeon E5-2620 v3 和 128GB RAM(NUMA 架构 - 可能与问题有关!)
  • 3)我使用 mpirun -n 22 wrf.exe 运行 WRF(我有 24 个可用的逻辑内核)
  • 4) 我使用 Centos 7 和 3.10.0-514.26.2.el7.x86_64 内核
  • 5) Everthing 在计算性能方面工作正常,直到发生以下一件事:
  • 5a) linux 文件缓存获取一些数据,或
  • 5b) 我使用 tmpfs 并用一些数据填充它

在 5a 或 5b 场景中,我的 WRF 开始突然变慢,有时甚至比正常情况慢约 5 倍。

  • 6) RAM 没有被交换,它甚至不会发生,在最坏的情况下,我有大约 80% 的 RAM 可用!
  • 7) /etc/sysctl.conf 中的 vm.zone_reclaim_mode = 1 似乎有助于延迟 5a 场景中的问题
  • 8) echo 1 > /proc/sys/vm/drop_caches 完全解决了 5a 场景中的问题,将 WRF …

performance centos numa

5
推荐指数
1
解决办法
254
查看次数