在最后一次我听到很多人声称Cell处理器已经死了,主要是由于以下原因:
由于
答案 0 :(得分:11)
我认为细胞发育缺乏普及的原因更接近:
答案 1 :(得分:3)
为1000个线程编写并行程序比编写10个线程更容易。 GPU具有1000个线程,具有硬件线程调度和负载平衡。虽然目前的GPU主要适用于数据并行小内核,但它们具有使这样的编程变得微不足道的工具。在消费者配置中,Cell只有几个10阶的处理器。 (超级计算机中使用的Cell衍生产品越过生产线,并拥有100个处理器。)
恕我直言,Cell最大的问题之一就是缺少指令缓存。 (我在2005年巴塞罗那MICRO会议的飞机上与Cell建筑师争论不休。尽管他们不同意我的意见,但我从电池的大型计算机用户那里听到了同样的声音。)人们可以应对适合固定大小的数据记忆 - 虽然他们抱怨,GPU也有同样的问题。但是将代码拟合到固定大小的指令存储器中是一件痛苦添加IF语句,性能可能会因为你必须开始使用叠加层而悬而未决。控制数据结构比避免在开发周期后期添加代码来修复错误要容易得多。
GPU最初与单元格有相同的问题 - 没有缓存,我也不是D。
但是GPU比Cell更多的线程,数据并行性能更好,他们吃了这个市场。 Leaving Cell仅锁定在控制台客户端,代码比GPU更复杂,但比CPU代码复杂。在中间挤压。
而且,与此同时,GPU正在增加I $和D $。所以他们变得更容易编程。
答案 2 :(得分:1)
为什么Cell死了?
1)SDK很可怕。我看到一些非常聪明的开发人员试图通过IBM邮件列表来试图解决这个问题,或者用Cell SDK来解决这个问题。
2)计算单元之间的总线开始显示出扩展问题,从未实现过32核。
3)OpenCl大约3到3年才太晚无法使用。
答案 3 :(得分:0)
如果你在两三年前开始 编程细胞,你会继续吗? 在这或你在考虑 切换到GPU?
我原以为90%为Cell处理器编程的人不能随意决定停止编程。您是否将此问题针对一个非常具体的开发社区?