LAMMPS 是一个大型软件项目,具有大量源文件、大量文档和大量示例文件。当通过从 GitHub 克隆 git 存储库来下载 LAMMPS 时,默认情况下还会下载自 2006 年 9 月以来的整个提交历史记录。编译 LAMMPS 会将已编译对象文件和库的存储要求添加到计数中。
在具有文件系统配额的 HPC 集群上的用户帐户或在磁盘空间容量有限的其他环境中,可能需要减少存储要求。以下是一些建议:
- 通过使用
git clone git@github.com:lammps/lammps --depth=1 --branch=develop
仅克隆最后一次提交而不是完整的项目历史记录来创建所谓的浅存储库。这会将下载的大小减少到大约一半。使用--depth=1
不可能检查 LAMMPS 的不同版本/分支,使用--depth=1000
将使多个最新版本可用,而无需额外的存储需求(整个 git 历史记录有近 30,000 次提交) 2021 年秋季)。 - 从 LAMMPS 主页上的下载部分或从 GitHub 上的 LAMMPS 发布页面下载 tar 存档,这些存档根本不包含 git 历史记录。
- 构建不带调试标志的 LAMMPS(从机器 makefile 中删除
-g
或使用-DCMAKE_BUILD_TYPE=Release
)或在不再进行调试时对 LAMMPS 可执行文件使用strip
命令需要。 strip 命令也可以应用于 LAMMPS 共享库。静态库可以被完全删除。 - 将 LAMMPS 可执行文件复制到永久位置后,删除已编译的目标文件和库。当使用传统的构建过程时,可以使用
make clean-<machine>
或make clean-all
删除src文件夹中的目标文件。对于基于 CMake 的构建,可以使用make clean
或仅删除整个构建文件夹。 - 构建和运行 LAMMPS 不需要包含文档树 (doc)、示例 (examples) 的文件夹,并且可以安全删除。潜在文件夹中的某些文件很大,如果不需要,可以删除。这些文件中最大的一个(总共占用约 120 MB)仅在安装相应的软件包时按需下载。
- 使用 CMake 构建过程时,可以在(本地)临时存储上完成编译,该存储不计入配额。与网络文件系统相比,本地临时文件系统可以提供加速创建目标文件和与库链接的额外好处。此外,使用 CMake(与传统 make 不同),可以使用来自同一源树的不同设置和包来编译 LAMMPS 可执行文件,因为所有配置信息都存储在构建文件夹中。因此没有必要拥有多个 LAMMPS 副本。