什么是 HPC 中的 scratch space /filesystem

What is scratch space /filesystem in HPC

我正在研究 HPC 应用程序和并行文件系统。我遇到了术语 scratch space 和 scratch 文件系统。

我无法想象这个划痕 space 存在的位置。它是在计算节点上作为挂载文件系统 /scratch 还是在主存储上 space.

内容是什么

scratch space 独立于每个计算节点,或者两个或多个节点可以共享一个 scratch space。

所以假设我有一个文件 123.txt 我想并行处理。 scratch space 将包含此文件的部分内容还是将复制整个文件。

我很困惑,google 上没有任何地方有明确的描述。请大家指点一下。

非常感谢。

这完全取决于集群的设置方式以及用户的需求。当您获得集群的访问权限时,您还应该获得一些有关如何使用它的信息,这些信息应该可以回答您的大部分问题。

在我工作的其中一个集群上,NFS 用于长期存储,一些 Lustre space 可用于作业暂存 space。所有节点都可以看到 NFS 和 Lustre。每个节点在节点上也有一些只有该节点可以看到的划痕 space。

如果您希望您的作业在 123.txt 上并行工作,您可以将 123.txt 复制到共享暂存 space(Lustre) 或者您可以将其复制到您的每个节点在您的作业文件中划入 spaces。

for i in `cat $PBS_NODEFILE | sort -u ` ; do scp 123.txt $i:/scratch ; done

一旦每个节点都有一个副本,您就可以 运行 您的工作。工作完成后,您需要将结果复制到持久存储,因为集群通常会 运行 脚本来清理暂存 space。

考虑或部署临时 space 或临时文件系统有很多不同的方法。

假设您有一个 linux 个节点的集群,这些节点都有一个硬盘。您可以想象每个节点本地的 /scratch space。由于 OS 图像将相对较小,并且现在无法获得小于 TB 驱动器的任何东西,因此您最终需要接近 1TB 的存储空间供节点使用。

你会用这个节点本地存储做什么?哦,很多东西。可扩展的检查点重启。本地核心外操作。

当我第一次开始使用集群时,将所有这些未使用的 space 组合到一个并行文件系统中似乎是个好主意。 PVFS 在这方面做得非常好。

这让我可以转到一个所有节点都可用的 /scratch 并行文件系统。这有一个技术组成部分(站点将部署哪个并行文件系统?),但也有一个策略组成部分:该文件系统上的数据将保留多长时间?它有备份吗? /scratch 通常意味着文件没有备份,实际上在一段时间不被访问后(通常是两周)被清除