|
从我们要讨论的问题看,是cuda技术能否让我们的电脑走向GPGPU计算时代。
那么这里很重要的一点是,我们的电脑怎么界定?我们的电脑日常做的最多的事情是什么?
我们的电脑是否需要这么庞大,上若干T的计算量?
事实上,世界上绝大部分的电脑做的事情是处理文档和上网,很难说需要这么庞大的计算量。
如果厂家不能找到一个新的增长点,让用户需要庞大的计算量,那么很难推动cuda在普通用户的应用。起码在可以看到的若干年内不会有,与其讨论cuda能否让电脑走向GPGPU,不如讨论如何让一个普通人需要那么庞大的,若干T的计算量,现在个人PC需要最庞大计算量的,恐怕就是3D游戏了,而这些人在整个世界的PC市场,恐怕占得比例不大,而且这也不关cuda的事情了。Intel显卡做的差,但是占有率却是最高的,不是因为它性能好,而是因为很多用户够用了。
异构计算是发展的大方向,但是需要大计算量的不会是个人用户,正常来说,是ZF,大公司,科研机构等的服务器市场。在这个环境,NV由于自己没有完整的解决方案,cpu,主板芯片等,要切入这个市场相当不容易。
我认为,cuda目前来说,开发确实难,从入门角度说,写一个能跑起来的程序并不难,难得是对程序合理的优化,难的是你把显卡的计算能力发挥出来。而这对一个商业公司来说,是需要代价的。需要提到的是,上面有人提到加速比,在我这里,如果cpu的代码也进行优化,要达到60X的加速是很困难的,如果差这么多,应该考虑一下cpu代码效率是不是太低了。
而且,大家都说cuda发展快,升级快,这是好事吗?不,从开发者的角度说,这是很糟糕的事情,因为这意味着你前面做的代码,有可能需要推翻重来才能达到好的效果……试想一下,你和客户说:你需要买新的显卡才能运行新的程序,而这显卡是半年前才买的……这些东西,对一个想推商业产品的公司都是一个必须要认真考虑的事情。X86构架这么多年来,还是比较稳定的,对一个商业公司而言,就可以带来比较低的开发成本。
手上也在做cuda的东西,但是迟迟没有投入真正的使用,原因确实是多方面的。
NV在通用计算上要走的路还很长,而且并不好走。如果因为通用计算而影响了显卡市场的发展,得失之间很难说好还是不好………… |
|