“推土机”(Bulldozer)是AMD处理器新一代微架构的代名词,时隔十多年后继K7架构问世以来最为不同的一代处理器架构。基于推土机架构的处理器将和以往所有AMD处理器的架构都不同,它是一种全新的架构模式。
AMD“推土机”架构将采用32纳米的先进工艺(目前Intel最新的SNB架构处理器同样采用32纳米工艺),更先进的工艺可以在处理器中增加33%的核心数量和50%的信息吞吐量。为啥说它是一种全新的架构呢?原因主要在于它的架构特点是采用“模块化”设计,每个“模块”包含两个处理器核心,并且各自拥有四条专用管线和一个整数调度器,共用一个浮点调度器和两个128位的FMAC乘法累加器。相比K10架构中ALU和AGU共享三个管线而言,“推土机”每个核心整数单元管线个,AGU和ALU各有两个。
此外,在一级缓存上也较之K10架构也有不小变化。相对K10架构中每个核心具备64KB的数据缓存和64KB的指令缓存,在“推土机”架构中每个核心具有16KB一级数据缓存,每个模块具有64KB双向一级指令缓存。显然“推土机”架构相比K10架构在缓存上有所减少,不过具体是否会影响性能还有待于观察。
1、采用模块化设计,有很大成效避免电路干扰,能集成更多的核心数量
2、每个核心拥有四条整数单元管线,AGU和ALU各有两个
3、每个线程具有独立存储模块和一组完整的整数执行单元
从上面我们大家可以看到AMD“推土机”架构的主要变化还是集中在核心线程上的改进,这就让人不得不想起Intel成名已久的Nehalem微架构。在Nehalem架构中Intel首次提出和应用的超线程技术(Hyper-Threading),Hyper-Threading是“SMT”技术的一个变相应用。它允许每个核心运行两个同步线程,以此来避免数据调取等待所浪费的时间,从而提升处理器多核执行效率。
在Intel最新的SandyBridge微架构中依旧采用了SMT技术来实现并发线程等待问题的解决,而推土机的主要改进其实就是在这个方面。推土机采用了和SMT不同的设计思路,但是它有区别于真正意义上的多核执行技术CMP。它是介于SMT和CMP之间的一个过渡架构产物。
不过,虽然是过渡架构产物,并不代表它没有作为。相反,它在多核执行技术方面还是取得了革新意义。我们知道推土机架构具有所谓的模块化设计特点,所以对比新的酷睿系列处理器它有如下两个优势:
第一、它可以在技术上有效避免增加核心产生的电路干扰现象以便于集成更多核心。
第二、它单元模块里的每个核心都具有完整的独立的整数执行单元。
编辑点评:单从革新的角度剖析,推土机架构的确带给我们许多新意,最明显的就是模块化的创新。这种技术究竟对性能提升有多大帮助有待于新品发布之后才有正式答案。相对于Intel目前的SNB架构而言,AMD的推土机绝对勇气可嘉。
Intel的SNB架构特点主要是核芯显卡、AVX指令集的加入,而其技术革新在信息通道和共享方式上。推土机则是在结构组建上有所突破,两者各自有各自的优势。从架构特点上能够正常的看到AMD未来很可能会在多核多线程上做文章,而SNB则会不断向智能化“一芯多用”的角度发展。未来Intel处理器内部非常有可能会加入内存、南桥控制器硬件设备,而应用端也有一定的可能实现蓝牙等无线传输上的高度集成化。
AMD已经在自己的下一代架构中做很大的创新,或许连Intel都有些始料未及。它至少敢于对SMT和CMP模式进行有想法的改动,预计推土机应该在多任务处理器中会有不小的提升,相对于Intel的SNB而言这个优势也是最明显的。至于能否在实际应用中发挥多大的作用,这些还要看其电路和应用环境的设定,但有一点它值得赞扬:“它很有勇气!”