|
本帖最后由 ptmd 于 2011-6-17 23:00 编辑
asdfjkl 发表于 2011-6-17 19:50 ![]()
APU创造性的把CPU和GPU融合到一个die上。
AMD有APU这个Idea的是时候,应该仔细去考虑过各个Unit的效率和功 ...
融合的极致不是把CPU跟GPU也融掉成超合金。
硬体上的层面已经完成了,第一代APU 就是了。现在就只欠缺架构上的融合和软体/OS 方面的融合。但是架构上的融合并不是指把GPU 和CPU 都掉到一个镬子里下调科炒在一起,他们还是分开炒、分开上菜的。
架构上的融合是指让GPU 也能有pagable 的内存,GPU 也能有和APU/CPU 的coherency,GPU 跟CPU 共享同一个寻址空间等等架构特性相关的内容。你不能把CPU 内的Flex FP 给替换作GPU 的Compute Unit,同样道理也能用在GPU 身上,因为他们的设计目的并不一样。 CPU 是设计分支串行Code 跑的,GPU 是设计给可以大规模平行的Code 跑的。你把这两种的东西融在一起,就跟要一个只有两条快速步行的腿的人,用几百条脚走路一样。
AMD 的目标只是把一切CPU 和GPU 之间的通讯、设计尽可能简化,并且把GPU 打造为和CPU 同等级的处理单元。代码上的融合,这并不是硬体的事情,这是FSA 这个类LLVM 的事情。所以最终APU 还是会保持CPU Cores + GPU Compute Units 的结构。所以最终APU 还是会保持CPU Cores + GPU Compute Units 的结构。 Serial 的跑CPU,Parallel 的跑GPU,混杂的就在两者之间执行。
至于带宽,这个固然是问题,解决方案也有很多。但 AMD claim 的是 CPU & GPU share memory & zero-copy benefit. 如何在不破坏这点的前提下提升内存带宽至足够运算工作使用是他们的目标,但足够 fGPU 的图形工作就不一定了。他们会提供相约的性能,但是相对集显来说还是会较弱,直至有高速的Stacked Memory 出现为止。 |
|