You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Cray XC30及XC30 MPP系统上编译CASTEP 18.1及并行运行版本?

在Cray XC30系统上编译CASTEP 18.1(含并行MPP版本)

我在Cray XC30上折腾过好几次CASTEP 18.1的编译,踩了不少坑,总结出一套稳定的步骤,不管是串行还是并行MPP版本都适用,分享给你:

一、前期准备工作

  • 先拿到官方授权的CASTEP 18.1源码包,解压到你的工作目录:
    tar zxvf castep-18.1.tar.gz && cd castep-18.1
    
  • 确认Cray XC30的环境模块加载正确:先执行module list查看已加载模块,确保PrgEnv-cray和libsci在列表里。如果没有,先清空冲突模块再加载基础环境:
    module purge
    module load PrgEnv-cray libsci
    
    Cray的libsci已经包含了BLAS、LAPACK和FFTW这些CASTEP依赖的数学库,不用再单独安装。

二、配置编译架构文件

CASTEP的编译依赖arch目录下的架构配置文件,我们可以基于Cray模板修改,或者直接新建适配XC30的配置:

  1. 进入arch目录:cd arch
  2. 复制现有Cray配置作为基础(如果没有就直接新建):
    cp cray_xc30.mk my_cray_xc30.mk
    
  3. 编辑my_cray_xc30.mk,核心配置如下(注释里写了关键说明):
    # 通信架构:mpi对应并行MPP版本,serial对应串行版本
    COMMS_ARCH := mpi
    # Cray的编译器包装器,自动链接MPI和系统库,省了手动配置路径的麻烦
    CC := cc
    FC := ftn
    F90 := ftn
    LD := ftn
    # 编译优化选项,O3是最高级别优化,DNDEBUG关闭调试信息提升性能
    COPTFLAGS := -O3 -DNDEBUG
    FOPTFLAGS := -O3 -DNDEBUG -ffree-line-length-none
    LDOPTS := -O3
    # 链接Cray科学库,libsci_gnu是兼容GNU环境的版本
    LIBBLAS := -lsci_gnu
    LIBLAPACK := -lsci_gnu
    LIBFFT := -lfftw3
    # 指定模块和目标文件的存放目录
    MODULE_DIR := modules
    OBJECT_DIR := objects
    
    如果要编译串行版本,只需要把COMMS_ARCH := mpi改成COMMS_ARCH := serial就行。

三、开始编译

回到CASTEP根目录,执行编译命令:

  1. 先清理之前的编译残留(如果有的话):
    make clean
    
  2. 并行编译主程序,-j后面的数字是编译线程数,根据节点CPU核心数调整(XC30一般每个节点16/32核,用-j16效率很高):
    make -j16 ARCH=my_cray_xc30
    
  3. 编译完成后,可执行程序会生成在bin目录下:并行版本是castep.mpi,串行版本是castep.serial。

四、验证并行运行

找一个CASTEP自带的测试用例(比如test目录下的Si2例子),用Cray的srun命令提交并行任务:

# 假设你已经把Si2的输入文件复制到当前目录
srun -n 16 ./bin/castep.mpi Si2

-n 16指定用16个MPI进程运行。运行结束后查看Si2.castep输出文件,如果最后出现Total time的统计信息,没有报错,就说明编译成功了。

五、常见坑点提醒

  • 如果编译时出现链接错误,大概率是模块加载冲突,先执行module purge再重新加载PrgEnv-cray和libsci试试。
  • 确保源码包完整,不要遗漏src和arch目录下的任何文件,否则会出现找不到模块的错误。
  • 如果你的XC30配置了GPU,想要编译GPU加速版本,需要额外加载cudatoolkit模块,并在架构配置文件中添加GPU相关编译选项,不过CASTEP 18.1对Cray GPU的支持有限,建议先把CPU版本跑通再尝试。

内容的提问来源于stack exchange,提问作者AndyT

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 06:38:23