我管理一些服务器。有时我会确定哪些服务器的性能较低(低三倍)。
我开始明白为什么我识别出一台服务器有不同的内存模块(4GB、8GB、16GB)。这些模块自然有不同的等级数、CAS 和频率。
在Linux中如何确定这种情况?
在我看来,内存子系统应该在某处说内存模块不同,频率不同,并且它不能使用内存子系统进入某种兼容模式(并获得低性能)的组中的模块。
现在我的性能很低,并且 Linux 无法告诉我有关不同的不兼容内存模块的信息。
在 Linux 中哪里可以看到类似的内容?也许可以通过 PCM 硬件计数器看到?或者在其他地方?
答案1
它是 NUMA 系统吗?如果是,请参阅https://stackoverflow.com/questions/27250034/numa-balancer-in-linux也许吧。在 NUMA 系统上,如果你不断在 NUMA 域之间跳转,则可能会降低性能。话虽如此,调度程序应该大多数时候都做正确的事。