【发布时间】:2010-04-26 16:51:13
【问题描述】:
有谁知道已知可与 PBS/Torque 集群软件一起使用的 DRMAA-API 的 Java 实现?
这背后的背景:我想使用符合 DRMAA 的 API 从 Java 向新设置的 linux 集群提交作业。集群由PBS/Torque 管理。 Torque 包括用于 Torque/PBS 的 PBS DRMAA 1.0 库,其中包含 DRMA-C 绑定并在 libdrmaa.so 和 .a 二进制文件中提供。我知道 Sun Grid Engine 包含一个提供 Java-DRMAA API 的 drmaa.jar。事实上,我选择使用 SGE,但决定先尝试 PBS。
该决定背后的理论是:
“DRMAA 是一种标准,因此 Java API 只需要符合标准的 drmaa-c 绑定。”但是,我找不到这样的“通用 DRMAA-C-java API”,现在假设这个假设是错误的,并且 Java 库是特定于引擎的。
编辑: 我刚刚尝试了来自 sun Grid Engine 包的 drmaa.jar,并尝试将它与 pbs libdrmaa.so 交叉使用。毫不奇怪,那失败了(JNI unsatisfied link error)。
结论:这样不行!经过一番搜索,我只看到以下几个选项:
- 在 Globus 上安装 GridWay 工具包。安装在 PBS 之上, GridWay 声称在 爪哇。对我来说看起来太复杂了 设置。
- 报废 DRMAA,通过以下方式提交给 PBS 调用系统命令 qsub, qstat, 等来自Java。简单但并非如此 好的。
自己实现一个 drmaa 绑定。 太复杂了……
切换到 Grid Engine。我的通用电气 意见优于 PBS 关于语言绑定。
我倾向于选择选项 2。或 4。有什么建议吗?
【问题讨论】:
-
不得不接受我自己的答案作为正确答案可能会令人沮丧;)
标签: java cluster-computing pbs grid-computing drmaa