2015-12-10 4 views
1

Я хотел использовать инструмент параллельной работы GNU для ускорения передачи файлов rsync на несколько хостов, но похоже, что параллельный инструмент не делает его параллельным.Работы, выполняемые параллельными GNU, не кажутся параллельными

я ожидал time parallel "sleep 5; echo {}" ::: 1 2 3 брать не намного больше, чем на 5 секунд, но в реальном времени, это:

real 0m16.306s user 0m0.275s sys 0m0.108s

, который, как представляется, такой же, как for i in 1 2 3; sleep 5; done т.е. не распараллеливание вообще. Что я делаю неправильно?

+2

Эта команда запускает в 5.174s на моей машине. Я подозреваю, что здесь проблема с оборудованием, а не ошибка команды. Какая у вас настройка? Это выполняется в виртуальной системе? У вас есть как минимум 3 процессора для выполнения этого? – Samidamaru

+3

Попробуйте использовать 'parallel -j 3' –

+0

Да, он работает нормально на хосте с 12 процессорами. Хост, который я использовал, имеет 2 процессора, но я полагаю, что '' 'sleep''' не нуждается во всем процессоре для запуска. Когда я запускаю '' 'for i в 1 2 3; сделайте сон 5 и сделайте '' 'все задания закончите примерно через 5 секунд. – mitroo

ответ

0

Попробуйте использовать parallel -j 3 –   Марк Setchell

 Смежные вопросы

  • Нет связанных вопросов^_^