我正在尝试从HTCondor在OpenFOAM中启动一些计算。 到目前为止,我们只准备了一个多核服务器OpenFOAM。 OpenFOAM按照以下内容中的说明从源(不使用docker)安装:https://openfoam.org/download/4-1-source/
问题:当我在HTCondor中提交作业时,它正确启动(我看到生成了结果文件)但是输出文件没有被复制回提交的机器(在Windows上)。
这是我的工作档案:
Universe = vanilla
Executable = openfoamtest.sh
process_name = openfoamtest
input = /dev/null
requirements = ( (OpSys == "LINUX") && (Machine == "master") )
output = $(process_name).job.$(Process).out
error = $(process_name).job.$(Process).err
log = $(process_name).job.log
should_transfer_files = YES
when_to_transfer_output = ON_EXIT_OR_EVICT
transfer_executable = true
Queue 1
openfoamtest.sh:
#!/bin/bash
# Import the OpenFOAM environment
source /etc/bashrc
export PATH=$PATH:/usr/lib64/openmpi/bin/
source /opt/OpenFOAM/OpenFOAM-4.1/etc/bashrc
cd /tmp/openfoam/pitzDaily
blockMesh
simpleFoam
zip pitzDaily.zip *
请注意,我使用 condorworker 用户启动流程而不是用户 nobody 。提交是从Windows计算机。 谢谢。
答案 0 :(得分:1)
解决。问题是我的脚本中的“cd”。这将当前工作目录移动到另一个文件夹,HTCondor不知道。解决方案是添加, 在开始时:
# This is the folder where Condor starts
CURRENT_FOLDER=$PWD
最后:
# Copy back the generated file to Condor's execute folder.
cp pitzDaily.zip $CURRENT_FOLDER