增加系统变量即可:ANSGPU_OVERRIDE=1

`ERROR - No recommended GPU devices have been detected on machine` 弹出来的时候,RTX 4090刚装上去,驱动也是最新的,但Mechanical就是认不到这张卡。官方支持的GPU列表里全是A100、H100、RTX A6000这些,游戏卡压根不在列。
驱动换成NVIDIA Studio版本,别用Game Ready。Studio驱动针对CAE/CAD软件做过稳定性测试,长时间满载计算的时候驱动重置的概率低很多。`nvidia-smi` 检查驱动版本和CUDA版本,Mechanical 2024 R2要求CUDA 12.0以上,对应驱动版本535.54.03起步,版本表在Ansys官方帮助文档里有,自己查一下对着装。装完重启,`setenv.exe` 跑一遍把环境变量配好。
RTX 4090不在官方认证列表里,但能用。系统环境变量里加一个 `ANSGPU_OVERRIDE=1`,重启Workbench,Mechanical再跑求解的时候就会认这张卡了。不加这个变量,软件检测到非认证卡直接拒绝启用,加完之后它不再检查认证状态,直接开GPU加速。跟游戏卡类似,RTX 4060跑Fluent也能加速,加同样的环境变量,不过显存8G限制了模型规模,500万网格以上的算例容易爆显存。
Fluent的GPU求解器跟Mechanical走的不是同一条路。Fluent Launcher界面里勾选 `Use GPU Solver`,或者命令行 `fluent 3d -gpu` 启动。Fluent GPU求解器需要Enterprise级别授权,Standard版就算勾了也启不起来,买卡之前先确认许可证里面有没有包含GPU Solver的feature。启动之后在 `General` 面板里能看到GPU加速选项,原生的GPU求解器主要支持基于压力的耦合求解器,分离式求解器需要通过TUI命令单独配置,而且加速效果不明显,GPU对线性系统省下来的时间跟CPU-GPU数据交互的额外耗时基本抵消了。
RTX 4090跑Fluent的实测数据。50万网格的案例里,一张4090相比双路Xeon Gold 6330加速比大概2.7倍,显存24G能撑住千万级网格,但双精度性能只有FP32的1/64,专业卡比如RTX A6000是1/32以上。结构隐式分析吃双精度,游戏卡在这类求解器上加速比远不如Fluent那么明显。Fluent求解器矩阵运算主要在单精度下跑,4090在这块发挥得比较好。多卡的话4090不支持NVLink,只能走PCIe,两张卡之间的通信瓶颈会拖累并行效率,单卡反而是性价比最高的方案。
之前给一台工作站装4090跑Fluent,没加环境变量的时候`nvidia-smi`能看到卡在跑,但Fluent日志里GPU acceleration那一栏一直是disabled。加了 `ANSGPU_OVERRIDE=1` 重启之后才生效。跑一个离心泵的内流场,240万网格稳态,CPU 32核跑了4小时20分,换4090之后1小时50分,加速比2.3左右。残差收敛曲线前100步跟CPU几乎重合,后面GPU的震荡稍微大一点,双精度精度差异在工程可接受范围内。机箱里4090占了三个槽位,把旁边的网卡挤歪了,网线插上去接触不良,跑了一半断网,HPC队列掉了,重跑了一遍。
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删