网格引擎集群+OpenCV:奇怪的行为
Grid engine cluster + OpenCV: strange behaviour
我使用网格引擎集群来运行一些OpenCV代码。当代码在本地执行时运行良好,但当提交到网格时,它不起作用。我在这里提取了一个最小的例子。
在目录~/code/
中,我有一个文件test.cpp
,其中包含以下代码:
#include <opencv2/core.hpp>
#include <iterator>
#include <string>
#include <sys/types.h>
#include <sys/stat.h>
using namespace cv;
using namespace std;
int main(int ac, char** av)
{
/// Create a random matrix
Mat M;
/// Create a subfolder
string folderName = "sub/";
mkdir(folderName.c_str(),0777);
return 0;
}
代码编译时没有出现错误。
在本地执行时,即
username@machine:~/code$ ./test
它按预期创建了一个子文件夹,即~/code/sub
。
为了提交到网格,我在包含的主目录(即~/job.sh
)中创建了一个作业脚本job.sh
cd code/
./test
然后使用提交
qsub job.sh
什么也没发生。(没有错误)。
但是,当我删除该行时
Mat M;
它确实按预期创建了文件夹
造成这种行为的可能原因是什么?我在想OpenCV的共享库没有安装在网格的其他计算机上,但我不确定,也不知道如何验证。
提前感谢您的任何建议。
库需要可供队列中要向其提交作业的所有执行节点访问。如果执行节点可以访问共享位置,例如NFS装载,则可以在那里安装库。否则,您需要在所有执行节点上安装所需的库。关于SET_LIB_PATH:的附加链接
blogs.oracle.com/templedf/entry/heriting_job_environment
虽然这将有助于指向正确的位置,但库仍然需要是可访问的
相关文章:
- C++,OpenCV,尝试显示图像时"OpenCV(4.3.0) Error: Assertion failed (size.width>0 && size.height>0)"此错误
- 尝试导入pybind-opencv模块时出现libgtk错误
- 在编译C++代码(具有dlib和opencv)到WASM时面临问题
- 如何使用OpenCV将RBG图像转换为HSV,并将H、S和V值保存为C++中的3个独立图像
- OpenCV EqualizeHist()从彩色图像创建黑白图像
- 将OpenCV C++重写为EmguCV C#-如何使用指针
- OpenCV C++.快速计算混淆矩阵
- 当使用带有VS2019或VSCode的虚幻引擎4.24.2时,我如何修复这些错误的Intellisense错误
- Unity在虚幻引擎4中的"Vector3.Slerp"等效C++?
- 在C++代码中包含opencv时,使用ctypes创建.so文件
- 如何创建从Maya(或类似程序)到虚幻引擎的自定义数据导出插件
- 哪些库可以通过Opencv调整曝光率
- 安装opencv失败-粘贴CMakeError.log的内容
- C++中的openCV Mat访问冲突
- 在虚幻引擎中删除NXOpen对象时崩溃
- OpenCV Android C++ imwrite not found
- 未定义的引用 .. 使用 OpenCV 编译 C++ 代码时,从命令行
- 将 OpenCV 与 CMAKE 中的项目一起构建为第三方库的正确方法
- 当我尝试在启用推理引擎的情况下编译 OpenCv 时,出现错误
- 网格引擎集群+OpenCV:奇怪的行为