我想知道双核和单核的处理机制?

ToooooddZhao 2007-09-13 08:17:28
现在大众都在倾向于双核,但是我测试过,真正工作的还是一个核。。前提我用的是xp的。。有人说用vista的会有作用。。

很不理解?
单核和双核的处理机制。。一级他们运作的方式
...全文
243 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
zy_914 2007-09-25
  • 打赏
  • 举报
回复
学习
zyx0507 2007-09-21
  • 打赏
  • 举报
回复
个人观点:不管是单核还是多核,每个CPU上运行哪些程序应该不是CPU自己决定的吧。应该是由操作系统来决定的。如果要充分发挥多核的优势呢,那就需要
程序员多努力了。
ajq 2007-09-21
  • 打赏
  • 举报
回复
学习
ycJ_154 2007-09-14
  • 打赏
  • 举报
回复
学习
mengmengswat 2007-09-13
  • 打赏
  • 举报
回复
LZ不要听信传言,二楼说得很正确. 每个核的性能充分发挥,取决于软件的多线程,并行化的编写.并行优化做得越好核心就会被越充分的利用.当然现在还有单线程的程序,为此Intel考虑到了动态加速技术,一个功能就是在运行单线程程序时,把空闲核心节省的电源功率来提高工作状态核心的频率.
deadknight9 2007-09-13
  • 打赏
  • 举报
回复
请问搂主是如何测试的?
jamesking 2007-09-13
  • 打赏
  • 举报
回复
这要看你运行的程序是不是多线程,如果你运行的是单线程程序,那么他只能在一个核上运行。多线程才能发挥多核的真正优势。
aa_99_liu 2007-09-13
  • 打赏
  • 举报
回复
目前业界对双核处理器的评判并没有一个统一的标准或定义。我们应该理性地看待双核处理器,它的出现是为了满足PC系统多任务应用的需求,只要性能更好、资源消耗更少、能满足应用需求的处理器,就是好产品。不过,从双方的口水战中也可以看出,这对市场的推进还是有很明显的效果,上游芯片厂商的推广力度不断加大,价格上也不断地调整,这对中下游厂商和终端用户来说都大有好处。

  从实质上来说,"真假"双核之争并非当今两大CPU厂商之间的口水战,事件的背后是一场商业谋划,这场商业博弈里面蕴藏着巨大的商机,从大局来看,两大巨头都不是输家。在处理器的速度竞赛面临技术瓶颈时,双核乃至多核处理器便自然成今后处理器的发展方向。这个发展趋势将引导整个IT产业链的方向,而谁能领先一步,谁就能在未来的市场博弈中拥有更大的发言权,我想,这才是Intel和AMD大打口水战的真正原因。
  可以预见的是,"真假"双核之争绝对没有失败者,无论结局如何,双核平台概念都已渐渐深入人心,展现在Intel和AMD面前的将是快速扩张的双核平台市场。

  "同行是冤家",这句俗语在IT领域被诠释得淋漓尽致,每年我们都可以看到Intel与AMD、NVIDIA与ATI等业界大腕的口水大战。这不,在2006年3月前后,CPU领域的AMD与Intel又开始互相指责对方,此次他们集中的焦点就在于"真假双核论"。到底谁是李逵?谁是李鬼?
"真假"双核之争的源头

  同一件工作任务,分配给一个人完成快,还是分配给两个人完成快?如果你不假思索,可能会认为两个人来得快,但事实上,如果两个人没有很好地团结协作,本来一天可以完成的工作,到了两个人手上就会变成我看你、你看我,甚至出现窝里斗的局面,任务无法圆满地完成。双核处理器也存在同样的道理,只有两个核心互相团结协作,双核的效率才有可能被发挥出来,否则不但效率提升不了,就连运算结果也会出现错误。
  我们知道,一套行之有效的任务协作调度机制,对于提高一个团队的工作效率有着至关重要的影响。双核处理器何尝不是如此?双核处理器的协作调度机制,首要解决的问题便是数据同步化操作。举个例子,如果在系统的内存数据区记录着"A=1",如果第一个CPU内核对此数据区进行读写操作,并且改写为"A=0",那么第二个CPU内核的缓存也必须更新,把A更新为0,否则在以后的操作中数据就会出错,这样一个过程就是缓存数据的一致性,也称为数据同步化操作。

  在数据同步化这个关键问题上,不同CPU的解决方法是不一样的:Pentium D把该任务交给了北桥芯片,Athlon 64 X2则内建一个协调单元,而Core Duo是通过共享二级缓存来实现。事实上,"真假"双核之争的源头就在于此。Pentium D实实在在集成了两个核心,但因为它的双核协作机制与AMD的不同,才让AMD找到了"发难"的机会。
双核处理器的协作机制

1.Pentim D--依靠北桥芯片进行沟通
  Pentium D两个核心的二级缓存相互隔绝,只是在前端总线部分简单合并在一起,如果有一个核心的缓存数据更改了,另一个核心要获取这个数据,该怎么办?很明显,一个核心必须将数据通过前端总线送到北桥芯片,再由北桥芯片发往内存,而另一个核心再通过北桥读取该数据。可见,在数据同步化这个过程中,Pentium D无法在CPU的内部直接完成,它要多消耗一些额外的内存访问操作。如果我们运行的是两个不同的任务,操作系统会把它们分派给不同内核,由于两个核心处理的任务不同,此时缓存数据并不需要同步,这样的设计影响并不大。但当我们运行那些针对双核优化的多线程软件时,缓存数据就需要频繁的同步操作,此时不但要消耗大量的CPU周期,还有可能会堵塞CPU的前端总线,协作效率很难有出色的表现。

 
Pentium D的设计架构图  目前Pentium D已经发展到第二代,比起Pentium D 8XX,Pentium D 9XX在双核架构上并没有什么实质性的改善,只是改用了更先进的65nm制造工艺、提升了每个核心的二级缓存容量、改变两个芯片的封装方法,两者在双核效率方面并没有什么差异。AMD认为Pentium D是一个CPU上的两个芯片,事实上果真如此吗?揭开Pentium D 9XX的散热金属盖,我们就会发现它拥有两个独立的Cedar Mill核心。CPU内的两个核心已经展现在我们的眼前,只是这两个核心的耦合程度比较松散罢了。

2.Athlon 64 X2--内置仲裁协调单元
  "艺高人胆大",AMD敢向Intel摆下擂台,自然要有一些过人的本领才行。与Pentium D一样,Athlon 64 X2同样使用了独立缓存的设计方案,两个核心拥有各自独立的缓存资源,但与Pentium D大为不同的是,Athlon 64 X2中两个核心的协作程度相当紧密。与Athlon 64 X2两个核心紧靠的单元是"System Request Interface"(系统请求接口,以下简称SRI),该单元拥有连接到两个二级缓存的高速总线,如果两个核心的缓存数据需要同步,只须通过SRI单元即可完成。如此一来,不但CPU资源的开销很小,而且不必占用内存总线资源,协作效率明显胜过Pentium D。

 
Athlon 64 X2的设计架构图  得益于双核协作架构的优势,Athlon 64 X2在执行针对双核优化的应用时,其性能提升幅度将超过Pentium D。一些评测也证实了这一结论,就拿MAYA 6的测试来说吧,双核心Pentium D 820比同频率单核心Pentum 4 520J性能提升了约38%,而Athlon 64 X2 3800+却比同频率单核心的Athlon 64 3200+(Socket 939)性能提升了约49%。

3.Core Duo--使用Smart Cache共享缓存技术
  作为CPU领域发号施令的霸主,Intel在设计代号为Yonah的Core Duo处理器时,就精心准备了一番,该产品在双核效率上的优秀表现才真正展示了巨人的实力。

  要加强两个核心的协作效率,目前使用的方案有两种:一是像Athlon 64 X2那样,继续沿用独立式缓存设计,但引入一个单元负责双核的协调,这种做法被称为基于独立缓存的紧密型耦合方案;二是像IBM的多核CPU那样,让两个核心共同享用二级缓存,这种做法被称为基于共享缓存的紧密型耦合方案。两种设计方案中,前一种相对比较简单,只须为两个核心添加一个调度单元即可;而后一种设计方案,由于两个核心共享二级缓存资源,不可避免地要"争夺"二级缓存,如果调度不当,两个核心就会产生冲突。
 

Core Duo开启了移动双核时代  但事情往往存在两面性,后一种方案虽然有一定的风险,但如果缓存资源争抢的问题得到解决,它便具有独立式缓存设计无法比拟的优势:一是二级缓存的全部资源可被任何一个核心访问,当二级缓存的数据更新后,两个核心并不需要作同步工作,数据同步化的工作量相对减少了;二是任何一个核心可以根据任务量的多少,决定占用多少二级缓存资源,资源的利用效率相对高多了,在笔记本电池模式下,如果将其中一个核心关闭,另一个核心可占有全部的二级缓存资源,独立式缓存设计就只剩下一半资源可用了。相比之下,共享式缓存设计更有优势。权衡利弊之后,Intel决定为Core Duo引入共享式缓存设计。
  在Core Duo的内部架构中,两个核心通过"SBR"(Shared Bus Router,即共享资源调度器)共享二级缓存资源,Intel将这套共享缓存技术称为"Smart Cache"。当一个核心运算完毕后把结果存在二级缓存中,另一个核心便可通过SBR读取它放在二级缓存上的数据,比起先前Pentium D通过北桥芯片迂回的方案,该方法不但大幅降低了读取上的延迟,还减少了对前端总线的占用。除了不必对缓存资源作频繁的同步化操作外,Shared Bus Router还拥有"Bandwidth Adaptation(带宽适应)"机制,它可以对双核共享前端总线进行统一管理,避免两者产生冲突,此举改善了双核共享前端总线时的效率,减少了不必要的延迟,功能上有点类似于Athlon 64 X2的Crossbar Switch单元,但由于K8架构整合了内存控制器,后者还要负责来自内存总线的传输协调工作。

 
Core Duo处理器的内部架构图  Smart Cache技术的威力在实际测试中也被体现出来。在使用SiSoftware Sandra 2005对Core Duo T2600(2.16GHz)的算术运算基准测试中,它与频率接近的Pentium M 770(2.13GHz)相比,性能有一倍以上的提升。就算频率低于Pentium M 770(2.13GHz)22%的Core Duo T2300(1.66GHz),性能也领先前者约60%。美中不足的是,Core Duo不支持Intel的64位处理技术--EM64T。

写在最后
  如果说Pentium D因两个核心的协作效率不理想早早出局的话,剩下的比拼就会在Athlon 64 X2和Core Duo之间进行了。Core Duo使用的Smart Cache技术还将应用于Intel的下一代桌面处理器Conroe。由于不必对二级缓存数据作同步更新,Core Duo在双核协作效率方面比前一代产品有了很大的进步。从可扩展的角度来看,K8拥有System Request Queue(系统请求队列)及Crossbar(矩阵)单元。换句话说,K8架构早就为多核心处理器作好了准备,AMD可以轻松地开发出双核、四核,甚至更多核心的产品。

  Intel打算在2007年推出两款代号分别为"Kentsfield"和"Whitefield"的四核心处理器,其中Kentsfield与现在的Pentium D 9XX类似,就是在一块电路板上整合两个Conroe核心,这两个核心必须通过前端总线和北桥芯片才能实现缓存数据同步,而稍晚推出的Whitefield才会采用四核心共享二级缓存的结构设计。Intel这样打算的目的主要是将产品快速推向市场。
  "不畏浮云遮望眼"。AMD和Intel两家的双核处理器在设计架构上虽有所不同,但用真假来加以区分也是不妥当的。IT领域历来不缺少口水战,但当事人及公众对这件事情的热情关注,不正说明双核乃至多核是处理器的发展趋势吗
david_xie 2007-09-13
  • 打赏
  • 举报
回复
学习

567

社区成员

发帖
与我相关
我的任务
社区描述
英特尔® 边缘计算,聚焦于边缘计算、AI、IoT等领域,为开发者提供丰富的开发资源、创新技术、解决方案与行业活动。
社区管理员
  • 英特尔技术社区
  • shere_lin
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧