我们有两台相同的服务器,其规格如下:
- 4 个插槽,包含 2.10 GHz 的 AMD Opteron 6172,每个插槽有 12 个核心
- 64 GB 内存
一台运行 Windows Server 2008 R2 Standard,因此可以使用 48 个核心和 32 GB RAM。另一台运行 Windows 7 Professional,因此可以使用 24 个核心和 64 GB RAM。
我运行了单线程性能基准测试,Windows Server 机器慢了 1.5 倍。
关于如何找出 Windows Server 如此缓慢的原因,有什么建议吗?
答案1
听起来很糟糕。我会在那时停止使用单线程应用程序并进行标准性能测试。
Windows 服务器中没有任何东西会使其速度大幅降低。不确定您看到了什么差异 - “1.5 倍”不是很清楚。您的意思是服务器上的 1 秒和 1.5 秒?
拉出服务器,对两者运行 CPU 性能测试。您可能会发现它们的性能不同。我发现库存服务器上没有任何东西导致这种情况。
答案2
您说这两台服务器是相同的;然后,您可以尝试在它们之间交换磁盘,并让每台服务器启动另一台服务器的操作系统;这将让您检查问题是否实际上与系统有关或与某些硬件/固件/BIOS 问题有关。
如果问题实际上取决于系统,那么下一步就是对 Windows Server 2008 R2 和 Windows 7 进行两次全新安装,不要在它们上安装或配置任何其他东西,然后再次运行基准测试。这将有助于排除驱动程序或软件问题。
如果表现差异持续发生……那么,情况就会变得有趣的。
答案3
您可能遇到了 CPU 节流问题,如http://support.microsoft.com/kb/2207548。
在电源管理中将电源配置文件更改为高性能,然后将 PCIE 链接状态编辑为适度省电,并将处理器电源管理中的最低处理器状态编辑为 5%。
这将为您提供最佳的 CPU 性能和平衡的节能效果。
我不敢相信这种情况仍然发生在使用 Haswell CPU 并且 BIOS 中启用了 C1E/C3/C6 和 Speedstep 并且在 Windows Server 2008 R 上运行默认的平衡电源配置文件的情况下。呵呵
答案4
Windows Server 在运行此类基准测试时不必比 Windows 7 表现更好,因为它没有充分利用系统资源。由于 Windows Server 在进程调度和内存管理方面的设置略有不同,因此对于某些针对桌面使用进行了优化的应用程序,它的运行速度比 Windows 桌面版稍慢。
但我不认为它应该慢 1.5 倍。你能检查一下 Windows Server 机器上安装的驱动程序吗?有些驱动程序可能随 Windows 7 一起提供,但不随 Windows Server 一起提供。