Запуск нескольких исполняемых файлов из очереди по локальной сети - PullRequest
0 голосов
/ 01 марта 2019

TLDR: есть ли способ использовать этот код или что-то подобное, чтобы получать входные данные из очереди для запуска достаточного количества исполняемых файлов, чтобы всегда иметь максимальное количество заданий, выполняемых на разных машинах в локальной сети?Он не обязательно должен быть основан на Python, но Python - это язык, с которым я больше всего знаком.

Я не сетевой инженер или действительно программист, но у меня есть немногоопыта Python.Я пытаюсь настроить распределенную вычислительную систему через локальную сеть, чтобы разбить большую симуляцию на куски и в конечном итоге отправить весь вывод в центральное место.Используя найденный клиентский и серверный код здесь Мне удалось заставить говорить несколько компьютеров, и я могу запустить один исполняемый файл на подключенных машинах.Проблема заключается в том, что способ, которым код в настоящее время структурирован, ожидает некоторого вида кода выхода и блокируется до получения этого кода выхода.Я хочу иметь возможность проверить количество доступных процессоров и дать одно «задание» из очереди на каждый процессор на каждой машине.В идеале был бы способ всегда иметь x запущенных заданий.Таким образом, если на машине 1 доступно 4 ЦП, на машине 2 - 3, а на машине 3 - 1, 8 заданий будут всегда работать до тех пор, пока очередь не станет пустой.В симуляции есть логика, которая позволяет пользователям определять, какую часть запускать, используя аргументы командной строки.Так что на самом деле единственная задача - передать эти аргументы из очереди в командное окно на каждой машине, пока все его процессоры не будут заняты.Каждый набор аргументов командной строки соответствует запуску одного исполняемого файла.

Не на всех машинах установлен Python, но я нашел способ преобразовать клиентский скрипт в исполняемый файл, который я могу сбросить на всех машинах и который, кажется, работает нормально.

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

Здесь - это ссылка на страницу YouTube создателя репозитория github, в которой рассказывается, как он написал свой код.

...