折腾了一天GPU加速CST计算,发现网上很多资料不太靠谱,在这里把自己走过的弯路记载一下。
是不是只能用官方推荐的高端显卡?
答案是可以用一般显卡。英伟达的GeForce系列同样可以用。比如RTX3090,3080,2060等。
看网上很多资料说只能用官方推荐显卡,那么版本越新,支持的显卡种类应该越多吧?我就特意去下载了2021版本的cst,看手册还是只支持这几种显卡。GPU_Computing_Guide_2021.pdf
顺便说一下,安装cst 2021,装到一半提示 please insert next disk,但是只有一个iso文件。这个时候需要把.iso文件解压之后再安装。
如何启用非官方推荐显卡?
首先,你得有张能够支持cuda 9.2版本及其以上 的显卡;
在桌面点击右键,打开NVIDIA控制面板,查看CUDA版本,没有的话就升级安装。
然后,往环境变量中,添加
CST_HWACC_ALLOW_UNVERIFIED_HARDWARE=1;
最后,在CST中求解器设置中,Acceleration中,把Hardware acceleration勾上,就像这样;
怎样判断显卡是不是加速计算了?
我一直在参考这些文章,基本上是互相转载的:
https://blog.csdn.net/Lyu_zhifang/article/details/108603481
https://zhuanlan.zhihu.com/p/245787886
后来发现:
GPU利用率不是观测有没有显卡加速的有效手段
可以通过看CST窗口的信息栏来看:
Hardware Accelerator Device activated:
1 CUDA GPU solver used,
type UNVERIFIED card found, GPU memory usage approx. 5 %
说明GPU是已经启用了的。应该是GPU只在计算中起作用,
GPU加速只能使用显卡5%,有提高使用率的办法吗?
网格太少的话效果不怎么明显。我这里只有两百多万个网格,用的是3090显卡,一般来说,可以支持几千万量级的网格数。建立一个复杂模型,网格数画密一些,就可以提高利用率。