2016-06-16 11 views
1

Использование GNU parallel, Я пытаюсь запустить скрипт субсэмплирования, который вводит два файла и выводит определенный файл подвыборки. Я использую эту команду:GNU Parallel - Несколько аргументов

parallel -j+0 --eta python sub_sample_.2.py ::: file1 file2 ::: file3 file4 ::: file5 file6 

Но нет ETA в командной строке, то есть:

Computer:jobs running/jobs completed/%of started jobs/Average seconds to complete 
ETA: 0s Left 8 AVG:0.00s local:8/0/1005/0.0 

Также только первые четыре файлы обрабатываются, но не последние два: file5 и file6.

ответ

1
parallel -j+0 --eta python sub_sample_.2.py ::: file1 file2 ::: file3 file4 ::: file5 file6 

2 * 2 * 2 = 8 рабочих мест в общей сложности.

Computer:jobs running/jobs completed/%of started jobs/Average seconds to complete 
ETA: 0s Left 8 AVG:0.00s local:8/0/1005/0.0 

ETA рассчитывается во время выполнения выполненных работ. Здесь пока не завершено никаких заданий, поэтому нет ETA. Вы также можете увидеть, что все 8 заданий работают в вашей локальной системе, поэтому у вас, вероятно, есть 8 или более ядер.

Также только первые четыре файлы обрабатываются, но не последние два: file5 и file6.

Написанный таким образом, я подозреваю, что вы, возможно, не знаете, что несколько ::: делать. Запустите --dryrun и посмотрите, будет ли это то, что вы ожидаете, будет запущено.

Я думаю, что то, что вы действительно хотите запустить это (требуется версия 20160422 или более поздней версии):

parallel --eta python sub_sample_.2.py ::: file1 file3 file5 :::+ file2 file4 file6 

Или:

parallel --xapply --eta python sub_sample_.2.py ::: file1 file3 file5 ::: file2 file4 file6 
+0

Спасибо. Я не знал, что работа должна закончиться, чтобы дать ETA. Просто, чтобы быть понятным, используя ::: +, это то же самое, что использовать -xapply? – Labrat

+0

@Labrat. ::: + является более продвинутым - быстро, но в этой ситуации они делают то же самое. –

+0

Если я использую команду, которая принимает выходной и входной аргументы, такие как: samtools sort -n Как бы я это сделал параллельно? – Labrat