Кто-нибудь знает реализацию Java DRMAA-API на Java, которая, как известно, работает с программным обеспечением кластера PBS / Torque?
Предпосылки этого: я хотел бы отправить задания во вновь настроенный Linux-кластер из Java с использованием API, совместимого с DRMAA. Кластер управляется PBS / Torque . Torque включает библиотеку PBS DRMAA 1.0 для Torque / PBS, которая содержит привязку DRMA-C и предоставляется в двоичных файлах libdrmaa.so и .a. Я знаю, что движок Sun grid включает в себя drmaa.jar, предоставляющий API-интерфейс Java-DRMAA. На самом деле я решил использовать SGE, но было решено сначала попробовать PBS.
Теория, лежащая в основе этого решения, была:
«DRMAA - это стандарт, и поэтому для API Java требуется только совместимое со стандартом связывание drmaa-c». Однако я не смог найти такого «общего API-интерфейса DRMAA-C-java» и теперь предполагаю, что это предположение неверно и что библиотеки Java являются специфичными для движка.
Edit:
Я просто экспериментировал с drmaa.jar из пакета движка sun grid и пытался использовать его с pbs libdrmaa.so. Неудивительно, что это не удалось (ошибка ссылки JNI неудовлетворенная).
Вывод: так не работает! После некоторого поиска я вижу только эти несколько вариантов:
- Установите GridWay поверх Globus
Инструментарий. Установлен поверх PBS,
GridWay заявляет о предоставлении DRMAA в
Джава. Выглядит слишком сложным для моего
установка.
- Лом DRMAA, отправить в PBS
вызов системной команды qsub, qstat,
и т.д. с Java. Просто но не так
отлично.
Реализовать привязку drmaa самостоятельно.
Слишком сложный ...
Переключиться на Grid Engine. GE в моем
мнение превосходит PBS
в отношении языковых привязок.
Я предпочитаю вариант 2. или 4. Любые рекомендации?