Ошибка выполнения Perl в кластере OGS HPC - PullRequest
0 голосов
/ 12 декабря 2018

Я пытаюсь отладить кластер HPC.

Одна проблема : отправка сценариев Perl в кластер Linux Suse с несколькими сотнями узлов через Open Grid Scheduler (OGS / GE 2011.11).

Это создает ошибку времени выполнения для сценариев Perl в «длинной очереди» в кластере, но не в «короткой очереди».

$> qsub -cwd -q short.q ./test.pl

Вывод в порядке

$> qsub -cwd -q long.q ./test.pl

Выходной журнал ошибок, / var / spool / sge / comp26 / job_scripts / 3141815: строка 2: синтаксическая ошибка рядом с неожиданным токеном my' /var/spool/sge/comp26/job_scripts/3141815: line 2: open (my $ fh, '>', 'test.out'); '

Если я отправлю сценарий оболочки в длинную очередь, он будет работать, содержащий

perl ./test.pl 

Есть идеи?

Система: GNU bash, версия4.2.46 (2), Perl v5.16.3 (yuk)

Тестовый скрипт

#!/usr/bin/perl
# Also tried #!/bin/perl
system("perl -v > perl.out");
open (my $fh, '>', 'test.out');
print $fh 'test';
close $fh;

1 Ответ

0 голосов
/ 11 февраля 2019

Решение, как описал @bytepusher, было

#!/usr/bin/env perl

, и отправка на qsub -cwd -q long.q ./test.pl была в порядке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...