HPC Pack 对于任务输入、输出和错误文件的组织非常灵活。 可以使用 工作目录、 标准输入、 标准输出和 标准错误 任务属性指定任何共享位置的本地或通用命名约定 (UNC) 文件路径。 任务还可以对存储在默认工作目录中的文件进行作。 在任一情况下,建议在共享文件夹上使用中央文件存储,最好在文件服务器上使用。
如果未为任务指定 标准输出 和 标准错误 文件,结果将定向到 hpcsheduler 数据库,并在 “视图作业 ”对话框中显示为任务的输出字段。 数据库每个任务最多存储 4 KB 的数据。 超出 4 KB 的任何其他数据将被截断。 如果指定 标准输出 和 标准错误 文件,则任务输出将定向到这些位置。
注释
指定文件路径时,请记住,这些文件是从计算节点访问的。 例如,“C:\Temp”是指运行应用程序的计算节点上的 Temp 目录,而不是头节点上或客户端计算机上的 Temp 目录。
程序文件
在任务命令行中指定程序文件时,请使用以下准则:
如果应用程序存在于所有计算节点上,并且已添加到
Path
环境变量,请仅键入可执行文件名称。 例如,键入 myapp.exe。如果应用程序存在于所有计算节点上,并且尚未添加到
Path
环境变量中,请在每个计算节点上键入应用程序的完整本地路径。 例如, C:\Program Files\myapp.exe。如果应用程序安装在文件共享上,请指定可执行文件的 UNC 路径。 例如,类型 \\server_name\Program Files\myapp.exe。
数据文件
默认情况下,标准输入、输出和错误文件相对于运行应用程序的计算节点的工作目录。
工作目录任务属性的默认值是节点上提交用户的主目录(%userprofile%
通常指向 C:\Users\user_name\Documents)。
可以使用 工作目录 任务属性简化对共享文件夹上的数据文件的任务访问。 例如,如果设置 \\fileserver\fileshare\ 的工作目录和 somefile.txt的标准输入,则标准输入将从 \\fileserver\fileshare\somefile.txt读取。
如果未为任务指定 标准输出 和 标准错误 文件,则结果将定向到作业计划程序服务数据库,并在 “任务属性 ”对话框中显示为任务的输出字段。 数据库每个任务最多存储 4 KB 的数据。 超出 4 KB 的任何其他数据将被截断。 如果指定 标准输出 和 标准错误 文件,则任务输出将定向到这些位置,并且不会存储在作业计划程序服务数据库中。
具有子任务和星号的任务 \
在包含子任务的任务中,可以使用星号 “、” 字符作为参数扫描索引(在 参数扫描 任务中)或子任务 ID(在 服务、 节点准备和 节点发布 任务中)的占位符。 例如,在第一个子任务中, \\datashare\userName\file*.txt
被解释为 \\datashare\userName\file1.txt
(或在 参数扫描 任务中,作为第一个索引值)。
可以包含多个星号 \ 来指示在表示索引或子任务数时要使用的最小位置数。 这不会限制需要更多位置的数字。 例如, \\datashare\userName\file****.txt
解释为 \\datashare\userName\file0001.txt
第一个子任务。
作业计划程序在将命令发送到计算节点之前解释命令。 若要运行使用星号 ^的命令,请包含插入符号 (^) 作为转义字符。 例如,若要创建从文件夹中删除所有文件的 Node Release 任务,可以键入如下所示的命令:
delete c:\temp\^*
注释
从命令提示符窗口提交的命令在传递到作业计划程序之前进行解释。 在命令提示符窗口中,若要提交运行相同命令的任务,需要添加额外的转义字符。 例如:delete c:\temp\^^*
作业计划程序接收命令, delete c:\temp\^*
计算节点将命令接收为 delete c:\temp\*
其他注意事项
访问网络共享时,请使用完整的 UNC 路径,而不是使用驱动程序字母映射,因为不同登录会话之间不会保留映射。
为输入、输出和错误文件创建文件存储通常是群集管理员和用户之间的协调工作,需要管理员的权限和对共享资源以及用户对涉及的项目、作业和文件的特定知识进行监督。