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 MKLexport OPENBLAS_NUM_THREADS=1   # 如果后端是 OpenBLASamset run --nworkers 24

 

 

图片