GPU VS CPU
-
@李东岳 普通的显卡作为GPU的话算直接的浮点运算效率回高很多,LES的求解器很多时间步长很小,可以直接进行时间推进,这种算起来就快,还有波尔兹曼方法,也是显式的时间推进方法。这种情况下一个GTX1080显卡,计算速度比7700k的cpu跑起来快100倍。看过固体力学也有算这类问题的,他们说能快到200倍。
但是如果用SIMPLE算法这种需要迭代循环的,还有求解压力伯松方程要算方程组问题的,会跑得非常慢。我朋友测试过大概1080就比普通的7700k快个一两倍。集群上的E5 E7这种核心比较多对比的话那么单纯用GPU似乎没有什么优势了,毕竟一个1080也不便宜。
不过苹果最早开发了新的架构,把浮点运算交给GPU把逻辑运算交给CPU,这种计算速度就特别快。现在超算中心好多都配置了这种加速卡。无锡太湖之光的也是用这种思路进行计算的。
但总体来说还是觉得编程上太困难了,我听天河中心的专家说现在CFD计算用加速卡的好像不多。 -
感觉GPU只是另一个层次和规模的并行计算,而并行计算的问题本质上还是算法的数据依赖问题,不管是Cache命中率还是显式隐式算法的问题其实都可以归结到数据依赖。
再放长远一些,到exa-scale之后内存效率反而是最重要的,GPU的内存和计算核心间的物理距离一般比CPU到主存要小,今后可以提高的空间会更多。
-
2017年9月20日 17:30
4/7
2021年4月9日 06:45