用GPU实现网络运算

2009年06月01日,316 次阅读

最近看到RMI新发布的XLP集成了POE,我忽然联想到,在图形运算领域,也存在一个order的问题——Vertex order。如果能够把Packet与Vertex进行映射,那么,通过GPU实现网络事务处理就是有可能的。

 

这是个有意思的设想。图形处理中,Vertex的顶点数据与网络中的Packet类似,只不过实现的功能不同罢了。从理论上看,两者间是有可能映射的。问题在于如何进行编译,以及针对GPU的流水线进行调度优化。GPU内部,完全是并行的思想。因为要进行大量的矩阵运算,所以采用了超大规模的SIMD结构,这一点网络处理器似乎也可借鉴。但是一旦Larrabee推出,很多问题就会迎刃而解。Larrabee拥有16个P55C内核,采用了顺序执行的方式,通过多个内核间的并行,可以实现大规模的SIMD运算。而P55C是x86 ISA,所以Larrabee是典型的x86架构的向量机。

……

观点 GPUnVIDIAATiIntelLarrabeex86SIMD

龙芯为啥不开窍?

2009年04月20日,290 次阅读

龙芯3号处理器的研发工作正在紧锣密鼓进行,据称采用了很多主流的技术,比如HyperTransport和多核架构。但是我感觉在整体上,它并不够领先。甚至可能龙芯3号一出来,就会遭到抨击。因为,业界已经开始了转型。

 

龙芯3还是采用OOO(Out Of Order)架构设计,这种架构适合制作复杂的处理器,并且只能通过复杂的硬件搭配才能获得比较好的效果。OOO同样需要强大的外围支持,比如对缓存的消耗更大,同时需要很多Buffer。问题是,人们研究分支预测的能力是有极限的,不可能在这个层面无限提高,流水线损失和流水线断流情况将大幅度抵消分支预测的带来的性能提升。Intel的解决办法非常简单,那就是大幅度提高2级缓存的容量,从而有效降低分支预测失效时的性能损失。

龙芯不可能走这条路,否则处理器的功耗会难以控制,实际效果也不见得能有多好。现在业内已经开始反思这种设计,并且尝试把它定位在合适的应用领域内。如果需要处理复杂事物,OOO的方式还有它存在的理由。即便如此,随着多核架构的逐渐普及,处理器对外围的要求也变得很高。在相互之间的数据共享方面,也可能出现很多资源争用的问题,并且越来越严重。

……

观点 龙芯IntelLarrabeeBarrelNiagaraUbicomAtomOOOSun

Intel调转CPU船头

2009年04月10日,254 次阅读

一直很看不上Atom的简单和低能,现在发现,我可能错了。Atom可能真的代表了Intel未来处理器设计的方向。加上近年晚些时候出来的Larrabee,将彻底改变Intel这艘大船的方向,从复杂再次回到简单。

 

Atom已经打下良好的基础,舍弃了传统的做法,不再通过优化分支预测实现流水线的高利用率,而是通过多线程来管理硬件资源,这样将大幅度降低处理器面临的挑战。

……

观点 SunNiagaraUbicomIntelLarrabeeAtom多线程Barrel