Render.ru

application sharing

Narvi

Активный участник
#1
А существуют ли такие программы, которые могут раскиды
вать вычислительные процессы на разные машины? Тоесть, например есть у меня тормозной рендер, который не умеет считать по сети. Я натравливаю на него эту утилю и все мои пять машин выполняют одновременно одну задачу.
 
#2
Боюсь, что это невозможно.
Есть вариант разгрызть картинку на куски, каждый запускать отдельным процессом, потом собирать куски вместе. Если это анимация, то можно делить сцену на части и разбрасывать части по машинам.
 
#3
По науке это называется КЛАСТЕР (двумя словами - это несколько компов, работающих "как один")... Но, боюсь что огорчу тебя сильно, кластерные технологии пока вроде доступны только на UNIX системах...

Что-то правда проскакивало по поводу кластеров на базе NT Server, но у меня об этом сейчас нет никакой информации.
 
#4
Если софт не умеет сам делить задачи, то никакой кластер ему не поможет. Thread то все равно будет один.
 
#5
wpiggy wrote:
>
> Если софт не умеет сам делить задачи, то никакой кластер ему
> не поможет. Thread то все равно будет один.

Ну тут я могу сказать только то, что большинство "серьёзных" программ написанных специально для работы под NT поддерживают multi-threading.
P.S. 3dsmax является таковой....
 
#7
Легко!!!
Несколько 19'' стоек с рэковыми компами и дисковыми массивами, некоторое количество оптоволокна, свичи, разумеется тоже оптические. Ну и, конечно софт который с этим добром разбираться будет (скорей всего самописный или заказной).
Можно превратить в подобную считалку любую локальную сеть с мощными машинами, вопрос организации этого процесса.

В одной из последних "Компьютерр" промелькнула информация, что какие-то ребята собрали считалку из 225 e-PC (это интернет-приставка), обошлась она очень дешево - около 200000$
 

Narvi

Активный участник
#8
Блин, я и спрашиваю - существует ли такой софт? Если да, то как называется...
 
#9
Дык...
Попробую объяснить.
Ребята, если где ошибусь, поправьте.
Кластер устроен так, что для прикладного софта он существует в виде ОДНОГО вычислительного ресурса, соответственно, модуль рендеринга (именно и только он) должен грамотно определять (или ему должен указать человек), сколько процессов (threads) он может запустить ОДНОВРЕМЕННО на этом ресурсе.
Либо нужно написать СВОЙ софт, который будет запускать, скажем, одновременно 8 кадров на обсчет (так делает TOONZ, так раньше считали на 3DStudio по сети). Либо нужно написать свой рендер, который будет делить задачи внутри кадра (так делают, например Mental Ray, Cinema4D ...).

Если ты имел в виду запуск одного процесса и дальнейший разброс его по процессорам, то это невозможно, причину лучше меня объяснят программеры.
 
Сверху