三级缓存是否由Sandy-Bridge E Xeon CPU的所有内核共享?
在一个相关的问题中,我询问了双CPU系统在使L3缓存加倍方面的好处。 但是,我已经注意到,至强E5-2600系列CPU的每个内核具有正好2.5 MB的L3缓存。 这使我相信该操作系统每个内核保留2.5 MB的L3缓存。但是,我也有一个矛盾的印象,即L3缓存在所有内核之间共享。令人惊讶的是,很少有信息或讨论。 我主要担心的是低优先级的后台应用程序是否会“占用” L3缓存并降低高优先级的前台应用程序的性能。我提出了两个具体的性能问题。 在我当前的VS 2008开发系统上,编译某个C ++程序需要25分钟,而在另一个系统上,编译它要快得多,在具有相同设置的VS 2008上仅需要5分钟-尽管我拥有接近高端的i7- 970 CPU和足够的RAM。 程序通常需要20秒钟才能在我的系统上运行(即显示其主窗口)。并且在相关说明中,尽管我尝试限制上下文菜单项(目前可能还有10个附加菜单项),但Windows Shell最多需要10秒才能显示Windows资源管理器上下文菜单(并且相关行为也需要花费很长的时间)。默认值)。 多年来,我的系统中肯定装有大量已安装(和卸载)的应用程序,但尽管如此,我仍尽我所能来简化系统。 我还运行着许多低优先级的后台应用程序。特别是冗余云备份软件(例如CrashPlan),在此6核12线程系统上,这些软件通常加起来约占CPU利用率的25%。 我要买一台新电脑。我知道我将继续运行许多后台应用程序,并安装/卸载许多程序。如果我认为使用双CPU系统不仅可以使内核数量增加一倍,而且可以使L3高速缓存数量增加一倍,将有助于克服可怕的C ++编译器性能和总体系统速度下降的问题,那么我很乐意这样做。 目前应该是没有理由的高端系统运行得很慢,甚至有许多程序和后台应用程序。但是,如果不管我给系统提供多少CPU能力和三级缓存,都会出现我的问题,仅仅是因为我确实安装并运行了这么多程序和后台应用程序,我不想在双CPU上浪费2500美元系统将无法解决我的问题。 有任何建议,特别是关于我的问题,即是否在所有内核之间共享L3缓存(例如,低优先级后台应用程序可能会占用L3缓存,减慢较高优先级的程序),或者是否将其绑定到个人核心,将不胜感激。