Java - Работа с распределенным вычислением

Ответить
Аватара пользователя
lxa85

Java - Работа с распределенным вычислением

Сообщение lxa85 »

Здравствуйте.

Нужна теоретическая поддержка, т.к. я несколько запутался в абстракциях.

Что есть?

Есть ПО, которое рассчитывает функцию с использованием нескольких потоков.

Для того, чтобы потоки не мешали друг другу работать, но вместе с тем обменивались друг с другом информацией они считывают кусок области памяти и могут обновлять его.

Вопросы следующие:

Если код запускается на машине Java, то где запускаются дополнительные процессы?

Команда



Код:

Код: Выделить всё

#ljp -lV

отдает запущенные JVM: запущенную программу, среду разработки NetBeans.

Выполняемых потоков я не вижу. И сказать что их действительно есть несколько потоков - я не могу.

Так же я не могу получить утилизацию процессора на 100%. Работает одно из ядер на полную, другие "прохлаждаются".



Второй момент.

Задача перейти к распределенным вычислениям.

Распределенные вычисления подразумевают под собой использование нескольких JVM вычислительных узлов.

Программа управления ими (GridGain) вроде бы сама умеет распределять нагрузку, а вроде и не умеет, есть противоречивые свидетельства.



Тут еще сложней.

Я не совсем понимаю принципы согласования (т.е. работа так же в асинхронном режиме).

JVM должны так же обращаться не которой единственной точке и информацией, чтобы продолжать вычисления.

Среда получается гетерогенная и получается мне нужен сетевой ресурс?

С другой - получается надо отправить вычислительную процедуру (довольно громоздкую) на другую JVM и ждать от нее ответа.



Запутался я Изображение
Ответить

Вернуться в «Программирование и базы данных»