我正在配置新的Dell服务器以运行SQLServer 2012 Enterprise。我可以选择购买一台服务器,每个物理插槽(CPU)有2.7个核心,频率为2.7Ghz,或者服务器,每个CPU有8个核心,频率为3.3GHz。我将有2个物理插座(CPUS) 服务器运行OLTP和OLAP处理。什么会给我最好的SQL性能?
提前致谢, 最大
答案 0 :(得分:2)
对于许可原因,您的公司可能会选择更少,更快的CPU,因为成本会随着内核数量的增加而线性上升。许可证的费用是核心的10倍。
比较每秒的周期:
2.7*12=32.4 //more
3.3*8=26.4
12核心的变体看起来更胜一筹。请注意,某些工作负载不会随核心数量线性扩展。他们缩小规模。这可能会改变性能,有利于CPU使用更少的内核。您需要使用实际工作量来衡量。不要误以为测量玩具的工作量。
答案 1 :(得分:1)
这实际上取决于您的工作量。如果您希望计算量很大(即CPU密集型)或处理大型数据集。
通常,单个CPU裸片上的内核更容易共享缓存和内存资源。当然,这取决于您所谈论的CPU品牌/型号。一些架构在芯片上有内存控制器(例如Intel i7和AMD Athlon 64)。这样可以减少内存延迟,但在CPU之间共享内存时会产生更多开销。一些架构具有与管芯(北桥)分离的控制器。但是,较高的时钟周期可能会弥补任何内存上下文开销。
因此,如果您期望更多内存密集型工作负载,请使用更少的CPU插槽和更多内核(以及更多内存)。如果您期望CPU密集型工作负载更多,请使用更高的时钟周期。
这在很大程度上取决于您的硬件平台,因此您的里程可能会有所不同。老实说,我发现更多的内存和更快的磁盘比CPU还要大得多。
不幸的是,真正了解的唯一方法是针对实际工作负载进行测试并测量差异。
答案 2 :(得分:0)
这不是问题所在,但答案可能更多。你可以推动任何改变吗?