我尝试将我的程序与集群一起使用。现在我创建小作业,并使用 bash 脚本将其提交给特定节点。这些作业将一个大文件复制到节点,在该文件上执行 5 个其他程序,最后该作业将文件复制回来并在节点上将其删除。
这个提交作业的 bash 脚本检查给定目录中有多少硬盘是可用的,计算可以在该节点上运行的最大作业数,并将该作业数发送到该特定节点。这种方法的缺点是我必须在所有作业完成后多次运行这个 bash 脚本。
现在我想用 python 和 drmaa api 做到这一点。但现在我想知道它是否能够使用这个 api 进行节点控制。是否可以使用 drmaa api 提交到特定节点?
或者我是否必须使用 Popen 编写一个解决方法来执行 qsub 命令并通过解析 qstat 命令的输出来获取每个节点的作业数?