我们有一台 SQL 服务器机器 - 它是一个 VMWare 映像(在 ESXi 硬件等上运行)。它具有 Windows 2008 x64 标准 SQL 安装是 SQL 2008 标准虚拟机有 12gb 的 RAM 和 4 个虚拟 CPU
我启用了 AWE 后,该机器的 CPU 占用率经常接近 100%,但 SQL Server 似乎只使用了 3-4GB 的 RAM
有没有办法让它更有效地利用更多可用内存?例如缓存结果..?
答案1
我对 VMware 的理解有限,那就是分配多个 vCPU 会对性能造成影响,因为主机需要等待所有 CPU 上都有可用切片。我可能完全错了,但作为测试,我会关闭它,用单个 vCPU 重新配置它,看看会发生什么。
编辑:
此外,对看似 CPU 问题的情况不加区别地投入 RAM 并不是最好的方法。可能需要使用 perfmon 进行一些监控来追踪 CPU 性能问题的根本原因。听起来你试图将高 CPU 利用率与 SQL 的“缺乏”内存消耗联系起来,这是一个错误的结论。
“嗯...SQL Server 只使用了 4GB 的 RAM,这肯定就是为什么 CPU 利用率达到 100% 的原因”如果我没有通过一些非常深入的性能监控统计数据进行确认的话,我是不会轻易下结论的。