AMSET 设置多核并行计算

AMSET是基于形变势理论的自动化输运计算工具,能够从 VASP 能带输出出发,一站式给出载流子迁移率、电导率、Seebeck 系数等关键输运性质。

随着掺杂浓度和温度点的增多,散射率计算量急剧膨胀,多核并行成为缩短机时的必备手段。

AMSET 内部采用多进程并行 来加速散射率计算,默认情况下会尝试使用全部可用的 CPU 核心(nworkers = -1)。

但这在集群或个人工作站上很容易触发内存耗尽问题,导致进程被杀。

方式一:

settings.yaml 中,通过 nworkers 控制并发进程数:

nworkers: 4 # 指定使用 4 个进程

方式二:

在启动 amset run 前设置环境变量后,直接加入并行参数

export OMP_NUM_THREADS=1 # 限制每个进程内部只开1个线程

export MKL_NUM_THREADS=1 # 如果使用 Intel MKL

export OPENBLAS_NUM_THREADS=1 # 如果后端是 OpenBLAS

amset run --nworkers 24

图片

相关推荐
爱勇宝7 小时前
大多数人不是在使用 AI 赚钱,而是在帮 AI 公司赚钱
前端·后端·程序员
冬奇Lab8 小时前
每日一个开源项目(第143篇):page-agent - 纯 JS 的网页 GUI Agent,无需截图、无需插件、无需后端
前端·人工智能·agent
IT_陈寒13 小时前
React的这个渲染问题连官方文档都没说清楚
前端·人工智能·后端
狼爷14 小时前
吃透 Java Function 接口,搞定 99% 的 Stream 场景
java·函数式编程
追逐时光者14 小时前
别再满网找零散工具了,腾讯 QQ 浏览器这个“帮小忙”工具箱真能省时间
前端·后端
Asmewill16 小时前
grep&curl命令学习笔记
前端
stringwu16 小时前
Flutter 开发必备:MVI 架构的高效实现指南
前端·flutter
用户21366100357217 小时前
Vue2组件化开发与父子通信
前端·vue.js
祎雪双十Gy18 小时前
从 DataX 的配置加载说起:我用 FastJson2 做了一个轻量级动态配置管理库
java·后端
Momo__18 小时前
TypeScript satisfies 操作符——比 as 更安全的类型守门员
前端·typescript