Реализация клиент-серверного приложения для распределенных вычислений - PullRequest
0 голосов
/ 26 февраля 2019

У меня есть куча машин с графическими процессорами (которыми владеют я и мои друзья), которые в основном используются для игр и машинного обучения.Вместо того, чтобы использовать каждую машину независимо, я подумал, что было бы лучше использовать их в качестве распределенной системы (например, проводить распределенное обучение моделям машинного обучения), чтобы сократить время обучения.У меня нет опыта в разработке приложений (оставленных облачных приложений), но я подумал, что было бы интересно создать клиент-серверное приложение, в котором:

  • на клиентской стороне (например, я и мои друзья) могут получить доступ к системе и посмотреть, какие машины доступны для работы.Если на машине установлен неработающий графический процессор, он должен быть доступен для работы, в противном случае (например, кто-то работает или играет) машина не должна быть доступна.Клиент может выбрать группу доступных машин, а затем запустить на них виртуальную машину (с кодом для запуска и всеми необходимыми данными).

  • на внутренней стороне,выбранные серверы получают виртуальную машину и выполняют код внутри нее распределенным способом (например, Tensorflow позволяет распределенное обучение).

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

Сказав это, я понятия не имею, с чего начать все это реализовывать.Помимо выбора языка (я более склонен к Java или Python, но я бы рассмотрел любой другой вариант), каковы основные шаги, которые я должен предпринять?Я знаю, что это, вероятно, обычное клиент-серверное приложение, но, как я уже сказал, у меня нет опыта разработки приложений.Спасибо

1 Ответ

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

На основании моего понимания.Вы хотите настроить распределенную вычислительную систему для машинного обучения и доступа из модели BS, верно?Если я прав.Может быть, вы можете проверить руководство по тензорному потоку, которое предназначено для решения этой проблемы.Ниже ссылка.

https://github.com/tensorflow/examples/blob/master/community/en/docs/deploy/distributed.md

...