我有两个服务器,一个运行核心i7 920(8个逻辑CPU,2.8Ghz),另一个运行Xeon X3430(4个逻辑CPU,2.4Ghz)。对于相同的.NET 4应用程序,第一台机器上的CPU使用率为6%;在第二台机器上它是50%!我想知道是什么让这个巨大的变化。我该如何诊断问题的原因?
答案 0 :(得分:2)
重要的不仅仅是CPU,你在使IO饱和吗?更快的机器是如此快得多,以至于它写的是CPU无法跟上的更多数据,而较慢的机器却在嘎嘎作响,因此CPU得到充分利用。
锁定可能也有一定的作用,我知道很久以前我写的一个简单的测试应用程序显示了单核和四核系统之间的巨大性能差异。 (单核心速度要快得多,我认为.NET优化了它的锁定而四核心受到了影响。)
简而言之,除非有关于这个问题的更多信息,否则除了猜测原因外,没有人可以给你任何其他信息。