实验室集群文档介绍了如何配置、使用 Spack。本文用具体的例子来演示如何在超算上配置 Spack,主要内容如下:
- 准备必要的数据
- 配置 Spack,修改配置文件
- 添加编译器和外部软件包
- 自定义软件包,安装软件包
- 导出模块文件
- 使用新安装的软件包
本文涉及的所有内容基本都包含在实验室集群文档和 Spack 官方文档中,因此不再专门给出链接。
实验室集群文档介绍了如何配置、使用 Spack。本文用具体的例子来演示如何在超算上配置 Spack,主要内容如下:
本文涉及的所有内容基本都包含在实验室集群文档和 Spack 官方文档中,因此不再专门给出链接。
本文演示了如何使用实验室集群上安装的BOUT++。
使用已安装的某版本BOUT++库:
$ spack load bout-dev ~openmp+scorep
使用BOUT++的依赖,但不包括BOUT++库本身:
$ spack load --only dependencies ~openmp+scorep
查看当前BOUT++的配置:
$ bout-config --all
Spack的环境变量、自动补全等都由Spack目录下的脚本设置。例如,为bash设置环境变量的命令为
$ export SPACK_ROOT=/path/to/spack
$ source $SPACK_ROOT/share/spack/setup-env.sh
当我们有多个Spack时,直接source
其中一个Spack的环境配置脚本可能不会达到预期效果。比如,首先加载了集群的公共Spack,随后切换到自己的本地Spack,实际上仍有些环境是公共Spack设置的。此时我们需要清除一下旧的环境。