Меню

Настройка рендер фермы в 3ds max

Приветсвую всех, кто зашел почитать про сервера и вычислительные фермы. Хочу поделиться своим опытом, а в небольшом прологе я объясню некоторые нюансы и мотивацию. Данные статьи возможно будут полезны для тех, кто захочет построить свою ферму. Могу предположить, что кто-то после этого может и передумать строить ферму и будет рендерить на стороне.

Собственно вот и пролог

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

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

В тот же день были выставлены на продажу все видеокарты и начались планы по постройке фермы. На этом пути я познакомился с одним очень интересным человеком и вскоре мы стали друзьями и партнерами. Этот человек как раз владел небольшой фермочкой из десятка серверов на балконе.

Далее была составлена таблица, в которую аккуратно вносились все найденные в продаже процессоры (как серверные так и обычные), перемножались ядра на Гигагерцы, долго и нудно выискивались результаты процессоров в бенчмарке Cinebench, как наиболее подходящем пакете для понимания производительности того или иного процессора в рендеринге, и путем нехитрых вычислений отбирался оптимальный процессор. Дальше стало понятно, что так выбирать процессор глупо, в следствии чего эта таблица обросла ещё десятком параметров, где учитывалась не только производительность CPU на каждый доллар, но так же учитывалась стоимость платформы, энергопотребление и прочие сопутствующие расходы. Таким образом на тот момент я пришел к тому, что идеальным вариантом будет покупка процессоров серии Intel Xeon серий 5500, а именно Xeon 5540.

Спешно были куплены материнки от сервера (причем очень нестандартные), процессоры и конечно-же регистровая память. Сделал к матерникам переходники для питания (даешь нестандартным материнкам нестандартные разъемы!). Позже сделал на лазерной резке корпус для двух плат, покрасил и даже оборудовал это всё водянкой! К сожалению фоток не сохранилось, но плату помню как сейчас:

На данном этапе приходит понимание двух простых истин:

1) Серверов дома быть не должно (в случае когда ты хочешь на них заработать)

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

Старый сервер был разобран и распродан, ну а в каморку переехали сервера от моего напарника. На этот раз это были уже вполне себе серьезные железки от Dell (по сравнению с моим самосбором), хотя на тот момент уже и начинающие активно устаревать, т.к. собраны были ещё на 771 сокете и DDR2 памяти.

Это было уже гораздо более взрослое решение, после которого все переехавшие самосборные «сервера» были разобраны и распроданы.

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

На данном моменте я хочу завершить эту часть, а в следующей расскажу что было не так с серверами, что мы с этим сделали и как всё пошло не по плану.

Источник

Настройка рендер фермы в 3ds max

По окончанию установки сети замеры показали скорость в 896 Мбит/с., делим на 8 и получается 112 мегабайт за секунду. Тестировалось по схеме: главная машина – это клиент, а ноды сервера. То есть DRServer получит запрашиваемую информацию с примерно такой же скоростью. На мой взгляд это не плохой показатель. Для сравнения, скорость чтения/записи из буфера HDD в среднем идет 120-140 Мбайт/с. В конечном счете считывание информации для последующего рендеринга будет ограничиваться скоростью вашего HDD. Приличное ускорение дадут SSD накопители, так как там скорости уже начинаются от 350 Мбайт/с. При планировании своей рендер-фермы это надо учитывать. Если хотите выжать по максимуму, то стоит поставить SSD.

Работаю я в Windows 7 и 8.1, на головной машине стоит 8.1, а на нодах 7ка. Вообще без разницы на каких версиях Windows работают компьютеры в сети и с этим проблем не должно возникнуть. Казалось бы, а когда все машины работают на одной ОС, то тут вообще все просто будет. Вот и я решил поставить 8.1 на все ноды и вышло не очень. Возникло очень много глюков с сетью, работала не стабильно, текстуры то подгружаются, то нет, в общем бился я долго, но так и не решил это. Все эти проблемы связаны были с ОС. Позже установив Win 7 все стало работать идеально. Ни разу не подводила меня. Несмотря на то что на головной машине я так и оставил Win 8.1, все работает. Не буду рекламировать ничего, сами решайте, что ставить.

Читайте также:  Настройка домофона vizit самостоятельно

Настройка сети в Win 7 и 8 ничем не отличается. Первое что делаем назначаем одну рабочую группу компьютерам в сети и присваиваем каждому ноду имя. Заходим в свойства системы и нажимаем «Изменить»:

Я назначил своим нодам имена nd0, nd1, nd2, nd3, nd4 и одна рабочая группа RENDERFARM. Рекомендую использовать короткие имена для компьютеров. К примеру, если у вас размер Backet’a в Vray 16×16 или еще меньше, то вы не проследите какой Backet от какого нода в работе. Длинное имя просто не поместиться в контейнер. После внесения изменений нам нужно будет перезагрузится, чтобы изменения вступили в силу.

Следующее необходимо назначить IP адреса удаленным компьютерам, для этого открываем свойства сетевого адаптера (Панель управления\Сеть и Интернет\Сетевые подключения). Настраиваем IPv4, выбираем его и жмем свойства.

Приводим все к следующему виду:

IP у меня начинается с 192.168.0.7 – это nd0IP для последующих нодов, соответственно:192.168.0.8 – nd1192.168.0.9 – nd2192.168.0.10 – nd3Все сохраняем и перезагружаем компьютер.

Теперь, желательно «пропинговать» ноды, чтобы удостовериться что все друг друга видят, сетка работает. Нажимаем сочетание клавиш Win+R и вводим cmd. Пишем следующее: ping (пробел) IP адрес.Должно выглядеть так:

При успешном «пинговании» должна быть такая же картина. Все это повторяем для всех нодов. После успешного тестирования можно переходить к настройкам общего доступа.

Заходим в Панель управления\Сеть и Интернет\Центр управления сетями и общим доступом и кликаем на «Дополнительные параметры общего доступа». Выставляем так:

Ну все, теперь можем расшаривать папки, создавать сетевые диски. Сеть готова для работы.

Ниже пример для тех, кто не знает, как расшаривать папки для общего доступа.Создаем папку, затем заходим в свойства папки, выбираем вкладку Доступ:

Нажимаем «Расширенная настройка»

Отмечаем пункт «Открыть общий доступ к этой папке». Далее «Применить» и ОК. Возвращаемся к свойствам папки, кликаем на кнопку «Общий доступ»

Пишем «Все» и нажимаем «Добавить»

Далее указываем что могут делать с содержимым этой папки другие пользователи. Затем нажимаем «Поделиться». Появится окно, уведомляющее что доступ открыт, готово.

Управление удаленными компьютерами происходит в графическом режиме, мышкой и клавиатурой (Server):

Работу с файлами организовал я следующим образом. Для нодов доступна только одна расшаренная папка где и лежат все файлы проектов для сетевого рендеринга. Она расположена на головной машине, на рабочем диске, в корне «E:\Farm\». Далее в ней будут просто создаваться папки проектов, куда копируются текстуры, proxy, ies. Выглядит это следующим образом:

Рабочие сцены лежат в другой, не расшаренной папке. Нет необходимости размещать сцены в папке Farm. Главное обеспечить нодам доступ для текстур, proxy, ies наших проектов.

Для сборки файлов использую стандартный 3ds max’овский Resource Collector. Перед каждым превью сразу собираю в папку Farm все использованные файлы в сцене. Некоторые сетуют что не надежный стандартный коллектор, но не знаю, у меня всегда работал исправно. Сторонними плагинами не пользуюсь. Только файлы типа HDR или EXR ручками скидываю. Может он их не видит, или не считывает с Environment’a. Это его минус кончено, в остальном все хорошо срабатывает. Что касается рабочего ПО, то я работаю в 3d’s Max Design 2015, V-Rray 3.00.7 и Corona Renderer A7.1, соответственно на всех машинах стоят одинаковые версии. Если будут стоять разные, то могут возникнуть конфликты. И вообще, весь софт, участвующий в сетевом рендеринге, должен быть одинаков и на всех машинах. Это касается и мелких плагинов, к примеру, Bercon Maps или Multitexture – Это процедурные карты. Отсутствие данных плагинов будет расцениваться как отсутствие текстур, и вы получите на рендере битые участки, где они должны были быть использованы.

Теперь, когда настроена сеть, открыт доступ к папке с текстурами, нам нужно указать пути к этим папкам в 3d’s max на каждом ноде.

Customize > Configure User Paths > External Files

Жмем Add и открываем сеть, выбираем наш главный компьютер (nd0), папка Farm. Ну а дальше папку, в которой хранятся текстуры. Можно сделать немного по-другому, подключить на каждом ноде сетевой диск. Этот сетевой диск будет, по сути, расшаренная папка Farm. Но только имеет он свойства локального диска HDD и будет отображаться как диск с буквой. При добавлении в пути нужно будет заходить не в Сеть, а в Мой Компьютер, а далее на сетевой диск, как при обычном добавлении путей на стационарном компе. Как подключить сетевой диск будет чуть ниже, только сделаю оговорку насчет них. Я отказался от такого метода добавления путей, так как в Windows 8.1 возникли проблемы с сетевыми дисками. Они были созданы, все работало, с перебоями конечно, в Win 8 вообще мало что работает стабильно, наверно только MS Store, но вот 3d’s max отказался их видеть. Были предприняты масса попыток исправить это, но не получилось. После этого я для себя решил, что буду добавлять пути только напрямую. Либо текстуры грузятся, значит сетка работает, либо нет, отсутствует доступ к удаленному компу. Нет желания больше доверять эти сетевым дискам, даже в Win 7 поставил все напрямую. Все работает исправно. Оставил сетевой диск только для быстрого доступа к файлам.

Читайте также:  Программа для настройки качества видео

Подключение сетевого диска. Открываем Мой Компьютер, вверху под адресной строкой находим «Подключить сетевой диск», нажимаем.

Здесь указываем под какой буквой будет создан диск и указываем расположение расшаренной папки на удаленном компе, на основе которой он будет создан. Жмем «Готово». Сразу же должен появиться вот такой значек:

Теперь можно пользоваться им как локальным диском.

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

Источник

Рендер ферма: что такое и зачем нужна?

Сегодня мы подробно рассмотрим следующие аспекты, касающиеся рендер ферм и рендера больших объемов компьютерной графики:
1. Что такое рендер ферма

2. Виды рендер ферм

3. Особенности использования рендер ферм

4. Когда стоит пользоваться рендер фермой, а когда инвестировать в свое железо

5. Крупнейшие фермы в России

Что такое рендер ферма?

По мере развития индустрии развлечений и повышения разрешений, сложность рендеринга 3d графики растет огромными темпами и соотвественно растет потребность любого продакшена в вычислительных ресурсах для рендера. Уже с 90х годов прошлого века стали появляться специализированные вычислительные кластеры предназначенные для обработки компьютерной графики, которые получили название “рендер ферма”, render farm.

Основными отличиями от большинства обычных датацентров являются: 1) максимально мощные процессоры (а с недавних пор и видеокарты), т.к. процесс рендера графики очень ресурсоемкий 2) большое количество оперативной памяти для продуктивной обработки графики (в реалиях 2017 года – от 64Gb RAM) 3) высокопроизводительные системы хранения данных. Проще говоря, рендер ферма – это центр для обработки данных с максимально возможной производительностью, какой-то хостинг-центр не просто будет неэффективен, но скорее всего даже не сможет начать обработку графики, проекты просто не откроются на слабых машинах.

Виды рендер ферм

Есть несколько путей сегментации рендер ферм по разным критериям. Начнем с простого: фермы бывают а) служебные б) публичные.

В первом случае ферма создается частным лицом или компанией для рендера собственных проектов и не предполагает предоставление доступа к ресурсам для сторонних лиц и организаций. Частная рендер ферма может состоять из 3-5 станций в случае студии архитектурной визуализации или 50-100-200 серверов в случае крупной vfx студии, делающей полнометражные фильмы. На западе многие студии имеют собственные фермы из нескольких сотен и даже тысяч серверов!

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

По типу исполнения фермы можно разделить на компьютерные и серверные. По сути дела, если объединить несколько обычных компьютеров в сеть и ставить распределенно задачи – это уже будет рендер фермой, но, конечно, более крупные вычислительные кластеры уже собираются на базе серверного исполнения с профессиональным резервированием питания и системами охлаждения.

Особенности использования рендер ферм

Давайте рассмотрим особенности использования внешних рендер мощностей и какие нюансы стоит учесть. В первую очередь, рендер фермы заточены на существенное ускорение рендера анимации, а не статичных картинок. Например, если у нас есть 10 серверов и 10 кадров – ферма поставит по кадру на сервер и мы получим как минимум ускорение в 10 раз (скорее всего больше потому что каждый сервер еще и мощнее чем ваша рабочая станция), если же мы отправляем на рендер 1 картинку, то те же 10 серверов могут считать ее распределенно, т.е. обмениваясь по сети информацией, обрабатывать коллективно, но тут уже по мере добавления серверов линейного прироста скорости рендера не происходит, потому что обмен информацией становится узким местом.
Тем не менее, если у вас например 9 камер в одной сцене, можно их поставить на рендер на ферме одновременно, а на вашем ПК они бы считались одна за другой.
Важно также оценить размер вашего проекта и скорость Интернета. Дело в том, что например, у вас проект весит 200 Гб и загружаться на ферму 30 часов, рендериться 5 часов, а потом часов 10 вы будете скачивать результаты. Вполне возможно, что окажется отрендерить у себя за сутки будет лучшим решением. Альтернативой тут может стать расширение собственного канала Интернет или оптимизация объема ассетов.
Практически на каждой рендер-ферме есть калькулятор, который поможет вам примерно оценить стоимость и время рендера. Ключевое слово здесь – примерно. Дело в том, что на данный момент не существует реальных способов оценить объем до рендера точно. Вам нужно будет отрендерить несколько кадров из секвенции у себя, ввести в калькулятор среднее время кадра, количество кадров и конфигурацию вашего компьютера. Калькулятор сравнит производительность с серверами фермы и выдаст прогноз. Однако, как вы понимаете, в начале секвенции кадры могут быть легкие по 10 минут, а в середине по нескольку часов, поэтому время кадра будет плавать существенно и итоговая стоимость может быть ниже или значительно выше.

Читайте также:  Kodi iptv настройка windows

До начала рендера на ферме, важно убедиться в совместимости версий установленного ПО на ферме и того, в котором сделан проект, включая все используемые плагины. В противном случае, может получиться так, что проект будет отрендерен без каких-то эффектов или некорректно, а ответственность будет лежать на вас и деньги просто так не вернут. В любом случае, будет полезно сделать тест из нескольких кадров, чтобы быть уверенным, что все настройки корректны, а материалы подцепились.

Когда стоит пользоваться рендер фермой, а когда инвестировать в свое железо?

В первую очередь все зависит от объемов рендера. Если у студии стабильно идет статика в основном, то скорее имеет смысл обновить железо, а какие-то пиковые нагрузки отправлять на ферму.
Другое дело, если объемы рендера весьма значительные. Мировая практика говорит от том, что для большинства студий, особенно без плана производства на годы вперед, предпочтительнее иметь относительно небольшой парк машин для превьюшек и ежедневной рутины, а для финальных рендеров использовать рендер фермы.
Развитие собственной инфраструктуры для рендеринга – это значительные инвестиции на начальном этапе и постоянные расходы. Купив железо, студия начинает тратить деньги на охлаждение, системы хранения, электроэнергию, содержание в штате сотрудников, отвечающих за обслуживание серверов, ремонт и замены оборудования. При этом если нет круглосуточной загрузки оборудования хотя бы на 60-70% – эти вложения никогда не отобьются. Кроме того, развивая собственное железо сложно решить проблему пиковых нагрузок.
Простой пример: vfx студия имеет 50 машин и делает фильм, в течение полугода загрузка оборудования колеблется в среднем на уровне 30-50%. А потом подходит момент финальных рендеров и им фактически нужны 200 машин на 1 месяц, чтобы успеть в срок. Что делать? Понижать качество или брать внешние ресурсы? Как правило делают второе. Но ведь если купить себе 200 серверов на будущее, то 10 месяцев из 12 они будут простаивать еще больше. Короче говоря, если нет налаженного конвеера, как например при производстве мульт сериалов, собственное железо не имеет экономического смысла. Компания будет терять на этом деньги.

Крупнейшие фермы в России и зарубежом

В России таких проектов всего

Отличная рендер ферма для самых разных проектов. Широкий спектр поддерживаемого софта, 250 мощных серверов Dual Xeon E5-2670, собственный софт для отправки задач на рендер за пару кликов для разного ПО: Blender, AE, Cinema 4D, 3ds max и даже Houdini.
Есть 10 GPU серверов на базе 6хGTX 1080Ti для рендера в OctaneRender и Redshift.

Служба поддержки работает круглосуточно, можно позвонить, написать и живой человек поможет с рендером или проконсультирует. Необычайно высокий уровень сервиса для России!
Час рендера, например, в 3ds max + Vray без скидок обойдется примерно в 75 рублей (1,24 USD)

Старая рендер ферма на основе арендованных вычислительных мощностей у университетов. Заявляют о 800 серверах и до 300 на пользователя, однако, на практике лично мне удалось запустить рендер более чем на 30-40. Свой софт работает только 3ds max и то не всех версий, в остальных случаях нужно сделать архив со всеми ассетами самому и загрузить на FTP, а потом запустить рендер из личного кабинета, что долго и неудобно.
Есть 3 GPU сервера по 4 карты 1080 по какой-то космической цене. Поддержка присутствует, но даже в простых настройках 3ds max не разбирается. Час рендера стоит аж 99 рублей!

MegaRender.com
Подпольная рендер ферма, ресурсов немного, получалось получить – всего 30-40 машин i7-4770k максимум, дополнительные машины арендуют. Автоматизация слабая, все приходится делать руками в 2016 году, сейчас не знаю. В суппорте похоже работает один человек – владелец “фермы”. GPU рендера нет.
Похоже на шарашкину контору без сроков и качества на кривом софте, но по очень низкой цене – от 15 руб за час.

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

Источник