воскресенье, 25 ноября 2012 г.

Как собрать недорогую рендер-ферму.



 Перевод замечательной статьи, посвященной созданию рендер-фермы в миниатюрный корпусах (правда автор выбрал micro-ATX, а не mini-ITX). К сожалению, сайт где была размещена статья, сейчас недоступен, поэтому не могу разместить все картинки из нее (только те, что успел спасти гугл)
          
                Рендер-ферма это кластер из компьютеров, которые рендерят затратные по времени анимацию или композиции.  Сила рендер-фермы в том, что чем больше компьютеров делают одну задачу, тем быстрее она будет сделана. Вместо того, чтобы иметь один очень мощный компьютер, у вас может быть куча слабых компьютеров, которые сделают ту же работу. Мне это нужно для моей студии, где я работаю с анимацией и композингом, но это так же применимо для домашних задач так же. Я построил рендер-ферму из  нод, каждая из которых стоит по 550 долл, но вы можете еще сильнее уменьшить стоимость ноды, например использую подержанные комплектующие, и собрать за эти деньги больше нод. 

                Данное руководство это всего-лишь направление для вашего выбора конфигурации. Если вы в этом не разбираетесь, то привлеките кого-то знающего в помощь. В противном случае есть вероятность что вы спалите свои комплектующие, а то и самих себя :)
                Вот спецификация ноды.
CORSAIR 4GB 240-Pin DDR3 SDRAM DDR3 1333 x4
Seagate Barracuda 7200.12 ST3500418AS 500GB 7200 RPM SATA 3.0Gb/s
AMD Phenom II X6 1090T Black Edition Thuban 3.2GHz Socket AM3 125W
MSI 880GM-E41 AM3 AMD 880G HDMI Micro ATX AMD Motherboard
Antec New Solution NSK3480 Black/ Silver 0.8mm cold-rolled steel construction MicroATX Mid Tower Computer Case 380W Power …
Все вместе стоит около 550 долл.

Я выбрал материнскую плату со встроенным видео, чтобы не приходилось тратиться на достаточно дорогую видеокарту. Кроме того, покупка видеокарт влечет за собой увеличение расходов на корпус большего размера и на более мощный блок питания. Запомните, задача состоит в том, чтобы сделать мощные ноды, не тратя на них много денег. Поскольку ни After Effect, ни Maya, да и большая часть софта для 3D не используют видеокарты для рендеринга, нет никаких причин покупать видеокарту, если можно обойтись интегрированным видео. Все что мне нужно, это материнская плата со встроенным видео для основных операций. Кроме того, у материнский карты должен быть маленький форм-фактор, например mictoATX.
До того, как выбрана видеокарта нужно выбрать марку процессора - AMD или Intel, что будет определять выбор материнской платы.  Хотя процессоры от Intel обладают большей производительностью, они куда более дороги. По соотношению цена/производительность лучшим выбором будет AMD. Вы можете купить отличные процессоры данного бренда по цене не выше 200 долл.
Кроме того, при выборе материнской платы обращайте внимание, какой максимальный объем оперативной памяти может быть там размещен. В моем случае это 16Гб, 4 слота максимум по 4Гб. Я установил в каждую ноду по максимуму.  

Поскольку на рендер нодах будет стоять только система и 3D софт, мне достаточно SATA винтов. Я выбрал жесткие диски объемом 500 Гб.
Я уже отметил ранее, что буду собирать ноды на маленьком форм-факторе, выбрав материнские платы форм-фактора micro-ATX. Я кашел корпуса micro-ATX, в которых уже есть блок питания - это позволило снизить цену нод. Будьте осторожны выбирая корпуса со встроенными блока питания. Обычно качество таких БП оставляет желать лучшего. Я прочитал чудовищное количество обзоров про корпуса со встроенными БП, прежде чем выбрать то, что меня устроило. Просто предупреждаю, чтобы вы были внимательными при выборе.
После выбора комплектующих все просто :))) Вставить процессоры в материнки, материнки в корпуса, вставить оперативную память и подключить винчестеры, подсоединить все кабели питания от БП к материнской плате. Потом включаем в сеть, инсталлируем  Windows.
Поскольку я пытался сэкономить, я не покупал в системные блоки CD-Rom. Но мне все равно нужно было еще инсталлировать Windows  и набор программного обеспечения.  Поскольку на материнских платах был IDE разъем, я взял старый CD-ROM подключал его по очереди к нодам.  Процесс инсталляции начался. 

Рендер-ферма администрирование
В процессе установки, когда система спрашивала меня идентификационную информацию системных блоков, я дал всем нодам запоминающиеся имена. В будущем, по мере расширения рендер фермы, это упростит администрирование.
Я использовал следующую систему, ноды называются RN01, RN02 и так далее (RN Render это Node).
Рендер-ферма своими руками
После завершения установки, я добавил картинку с именем ноды на каждый системный блок. Это позволит идентифицировать ноды при удаленном управлении очень легко и быстро.  

После этого я установил мой набор 3D приложений и плагинов для них. Кроме этого, на каждую ноду я установил бесплатный контроллер удаленного доступа  LogMeIN, так что я могу легко управлять каждой нодой через интернет.
Рендер-ферма настройкаПосле того, как на ноду установлен весь необходимый софт, отключаю  CD-ROM и проверяю ноду напоследок. Перезагружаюсь и захожу в BIOS, проверяю, все ли оборудование нормально подключено и скорость вращения вентиляторов. Иногда кабели бывают плохо подключены внутри системного блока, проверяю и если все нормально, наконец закрываю боковую крышку.

Для упрощения администрирования, на лицевую каждой ноды я наклеил небольшой кусок пленки с именем ноды.
Повторяю эти шаги для всех нод. Конечно, есть способ более простой установки ПО, это создания образа диска и клонирования его. К сожалению я далек от IT, все мои знания сводятся к простому объединению компьютеров в сеть.
Осталось только присоединить все эти ноды к моей рабочей станции, используя гигабитный свитч. Кроме того, для упрощения администрирования я купил KVM переключатель, так что теперь я могу управлять нодами используя только один монитор, одну мышь и клавиатуру.
Позже я постараюсь написать подробнее про настройку и администрирование сети.


Оригинал статьи.

How To Build An Inexpensive Render Farm
A render farm is a cluster of computers used to render out time consuming animations or composites. The power of this is more computers doing work=more work done faster. Instead of having one high powered computer do all of the work, you have (in my case) a bunch of low powered computers doing the work. I needed this for our small studio at work for 3d animations and heavy composites, but this can be applied for home setups as well. I built four nodes, each node was about $550, but you can scale back the specs or get older parts to do it for much less, and have more computers too.

This is meant as a guide, not step by step directions. If you don’t know how to do this find someone who does otherwise you could fry your components, or in some cases, yourself.

Here are the specs per node:

CORSAIR 4GB 240-Pin DDR3 SDRAM DDR3 1333 x4

Seagate Barracuda 7200.12 ST3500418AS 500GB 7200 RPM SATA 3.0Gb/s

AMD Phenom II X6 1090T Black Edition Thuban 3.2GHz Socket AM3 125W

MSI 880GM-E41 AM3 AMD 880G HDMI Micro ATX AMD Motherboard

Antec New Solution NSK3480 Black/ Silver 0.8mm cold-rolled steel construction MicroATX Mid Tower Computer Case 380W Power …

Again this cost about $550.

Now I picked a motherboard with integrated graphics as I did not want to blow money on expensive GPUs. Also buying graphics cards means bigger cases (more expensive) and bigger power supplies (more expensive). Remember, the goal is to keep the cost down, but keep these nodes powerful. And since After Effects and Maya, and most software packages for that matter, don’t yet really use GPUs for rendering, there was no point to having a graphics card. But, I did need a motherboard that had integrated graphics just for general operation. Also, I wanted small form factor so I went with microATX.



Before the motherboard is chosen however, I needed to pick either an Intel chip or an AMD chip, which would then decide which motherboard I would pick. Intel chips right now are more powerful, but they are more expensive. AMD just came out with their new six core CPUs for $200, you can’t beat that price for their performance.



The motherboard then drives the max amount of RAM that it can accommodate. In this case it was 16gb. Each RAM module was 4gb, and the motherboard has 4 slots for memory modules. 4gbX4 slots is 16gb. So I just maxed out each node.



For hard drives, all I needed was a SATA drive and it would only be used for Windows and software applications. So I just got 500gb drives.

I mentioned before that I wanted small form factor so I picked microATX motherboards. So I found microATX cases which included a power supply. This keeps the cost down. Be careful about intergrated power supplies. Usually they aren’t the best and will crap out on you. I read extensive reviews on this combo before I purchased it. Just beware of this.



My order of operations is this…….install the CPU onto the motherboard, install the board into the case, install the RAM, install the Hard drive, connect your cables to the board and hard drive, connect your cables from your case to the board. The next step would be to plug it in and see if it gets power. Mine did, so I was ready to install Windows.

Because I wanted to cut costs and keep the size down, I DID NOT buy any DVD-ROM drives. These are being phased out but Windows and Adobe Products still use DVDs to install with. So how did I do it?

I took a DVD drive from another computer and connected it via IDE cable to the motherboard (make sure there is no power on!) before I closed up the case.


Then I plugged back in the power, popped open the drive, and popped in Windows 7. The install began.


During the install when it prompted for computer name I gave it an easily identifiable name, knowing I would have multiple computers now and in the future on the network.

My naming was as such: RN01, RN02, etc. RN is for render node.

After Windows completed installation I added the node number as the desktop background to make identifying which computer I am on quick and easy.



I then installed all my software, plugins, etc. I also installed LogMeIn, a free remote login client, so that I can remotely access these computers over the Internet if I had to.

After a node was done, I put the panels back on the case. (Note: boot it up again after this step, go into BIOS and verify your fans are still spinning and all components are being read. Sometimes cables can shift around when you put the cover back on).

To make it even easier which computer was which, I placed a piece of tape on the front with the computer name written across it.



Then just repeat the steps for the rest of the nodes. Now I know there are methods to create one image of a hard drive and copy that over to other drives to speed up the process. But I’m not an IT guy, I just know how to put simple computers together.

Finally, all nodes will be connected to my workstation via a Gigabit switch for fast transfer speeds. Also, all nodes will be hooked up to a KVM switch so that I only need one keyboard, one mouse, and one monitor for all the computers. I will post more on that once that gets all set up.

Now, how do you set up your network for rendering? That is another post in itself.

2 комментария:

  1. "ни After Effect, ни Maya, да и большая часть софта для 3D не используют видеокарты для рендеринга" — автор эффект использует CUDA а в мае можно рендерить октаном... так что не стоит городить огород, проще купить пару мощных видеокарт.

    ОтветитьУдалить