Как правильно указать файлы массивов / заданий в сценарии PBS? - PullRequest
0 голосов
/ 22 мая 2018

Заранее искренне извиняюсь за такой элементарный вопрос, на который, возможно, уже был дан ответ.Я благодарен за вашу помощь или за указание в направлении существующего ответа.

Я пытаюсь запустить 1000 сценариев Python для 1000 файлов данных, настроив задание массива в сценарии PSB.Каждый скрипт явно вызывает определенный файл данных;это зашитоЗдесь было бы сложно и не нужно объяснять, почему скрипты python и файлы данных должны поддерживаться отдельно.

У меня есть имена файлов Python 1.py, 2.py, ... 1000.py.Они не хранятся в моем домашнем каталоге, и я думаю, что это проблема сейчас.

Я пробовал много разных вариаций сценария PBS, но безрезультатно, но думаю, что я ближе, чем был сегодня утром.

В любом случае, вот что у меня сейчас:

#! /bin/bash
#PBS -j oe
#PBS -o TEST-ARRAY.txt    
#PBS -N TEST-ARRAY    
#PBS -l nodes=1:ppn=1
#PSB -t 1-1000%100
#PBS -q long  

file='SOME/DIRECTORY/'${PBS_ARRAYID}'.py'
python $file

К сожалению, я получаю ошибку

python: can't open file 'SOME/DIRECTORY/.py': [Errno 2] No such file or directory

Итак, похоже, что мои настройкиПеременная file имеет дефект, и номер массива заданий не может быть вставлен в строку имени файла.Тем не менее, я пробовал с одинарными кавычками и без них, а также несколько других логических вещей без удачи.

Заранее благодарим за помощь.

1 Ответ

0 голосов
/ 23 мая 2018

Кажется, я не могу передать

 ${PBS_ARRAYID}'.py'

на python.Я должен был заметить, что другие модели массивов имеют вид

 somescript ${PBS_ARRAYID}.file

, где сценарий одинаков для всех заданий, а файлы данных различаются.Это был не мой случай.

Я решил эту проблему новичком, создав множество файлов планировщика.Да, по одному на каждое из 1000 заданий .... А затем запустите команду qsub над всеми из них, чтобы создать массив.Итак, последняя строка в моем скрипте PBS выглядела так:

 qsub ${PBS_ARRAYID}.sh

Я понимаю, что я мог бы зациклить сценарий планировщика без необходимости фактически создавать 1000 сценариев, но я мог заставить это работать совершенно правильнои попробую еще раз позже.

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