Using Vray distributed rendering

12 Mar, 2011 aggy
12 Mar, 2011 # Re: Using Vray distributed rendering
It would be nice if you tell something about distributive rendering in V-Ray. Why do we need it and how ho use this distributed computation?

12 Mar, 2011 RenderStuff (Staff Author)
12 Mar, 2011 # Re: Using Vray distributed rendering
Conversation imported from closed discussion group.

Hello, aggy, please describe the things you already know about distributive rendering, and those you wish to know. That way we will not repeat the well-known aspects.

Also, why do you want to know this exactly? If you need the theory, we'll describe it from the one side. If you you are familiar with theory and have the several computers, which you want to setup for distributive rendering, we will describe it from the other side.


12 Mar, 2011 aggy
12 Mar, 2011 # Re: Using Vray distributed rendering
Generally I want to know about it more in theory, but the such question arises. How 2 computers in one net can render one image? As I understand, the part is rendered on my computer, and other part on the computer that in other city, for example… Or the network must be local only? Probably only LAN… Well… I have not two computers, please describe the theory 🙂

P.S. I have read only the small info regarding to the some tutorial, where the net rendering was used, nothing more.

12 Mar, 2011 RenderStuff (Staff Author)
12 Mar, 2011 # Re: Using Vray distributed rendering
In theory, the distributed rendering is a possibility to calculate one image or animation using the power of several computers.

We would not describe this process relating to all of the software using it, but we will explain how to use it with V-Ray, because we use it every day in distributive rendering.
There are two types of such rendering. They are the by-frame rendering and actual so-called distributive rendering.

The frames rendering is used during the calculation of the animation. Its essence lies in that the programmed managing software part of the rendering algorithm simply distributes the calculation of the frames between all available computers, giving different frames for each computer. As the one of the computers has rendered the given frame, the managing program gives it the next frame, so the computer is always loaded. This way the all the computers render the frames, until the whole animation is done.

The actual distributed rendering is intended to calculate one (!) frame using all the computers. During the distributive rendering the manager program splits the image for many parts and each computer calculates the own area of the final image.

Technically, the distributive rendering is organized using the usual LAN. Of course, we will not counting the situations when the monstrous amount of computers is connected into one network, then the special high-speed commutation systems are used. In usual case, we need to specify the IP addresses of the computers in this network, which should take part in rendering. When the rendering begins, the all chosen computers begin to calculate their own areas of the whole image. That’s it 🙂

For convenience, the set of computers that take a part in distributed rendering is called render-farm.

As for the whether you can use the computer situated in other city or even in other state… if your distributive rendering software allows such possibility, then you of course can do it. But, it is rather specific soft, which not very popular in usual 3d rendering, like medical research, meteorological calculations and other scientific fields. There are online services that give the access to own render-farms, but anyway this is often the remote controlling of the other computers, not the distributed rendering from your computer 😉

12 Mar, 2011 aggy
12 Mar, 2011 # Re: Using Vray distributed rendering
It is much better now, thank you for such complete info 🙂 It is an interesting solution. I think distributed rendering is actual for the big companies, which work in computer graphics, but not for individual use in home conditions. Of course if you have more than one computer, then you can… 😉 Thank you again!

12 Mar, 2011 RenderStuff (Staff Author)
12 Mar, 2011 # Re: Using Vray distributed rendering
This is the great example how the distributed rendering looks like comparing to the usual one-computer rendering in V-Ray:

http://www.ranchcomputing.com/RanchBathroom_Video/Ranchbathroom_2mn_1k_proj.html

12 Mar, 2011 Yurshe
12 Mar, 2011 # Re: Using Vray distributed rendering
Hello Renderstuff! I have four computer in my local area network, which I want to use for distributive rendering, all have installed Win XP SP3, Max 9 32 bit Vray 1. Please tell how can I setup rendering on those for V-Ray. What may I run, what checkboxes tick/untick, maybe there are any shades about hard or software??? Also I wonder the net rendering for Scanline, if such exists.. 🙂

12 Mar, 2011 RenderStuff (Staff Author)
12 Mar, 2011 # Re: Using Vray distributed rendering
Hi,
There is nothing complicated, just two features that you got to know.

To use the several computers on a local network for distributive rendering, you need:

1 – Install 3ds Max + Vray on all computers.

2 - Run on all driven computers (nodes), not on the leading (server), the special program, which comes with the standard V-Ray called VRay spawner: “C:Program Files... 3ds max folder…vrayspawner90.exe”. This program will “catch” the rendering on the current computer. You can put this program to the autorun of the Windows, that way it will be always running.

3 – Create the net folder, shared between all these computers. It is needed for that all nodes be able to see all textures similarly to how the main server sees them. Surely the actual project max-file also should be there, in this shared folder. For example, all the projects you keep on the server’s disc E, in the “Project” folder. So the path to the max file will look like: “E:Project...project folder...filename.max”.
Accordingly, the all texture maps the 3ds Max will search by this path.
If you run the *.max project file with this like paths on the computer where this folder is, then everything will be ok, because 3ds max look to this EXACT path. If you try to run this max-file on other computer, the 3d Max anyway will look for textures in “E:Project...project folder...”, it does not care that you have no such folder on another computer. There may be even that there is no whole disc E on another computer. When 3ds max cannot access the texture, it renders textured object in monotonous white. As a temporary solution, you can copy project folder to the similar path on all of the nodes. Then when 3ds Max start the rendering, it surely will find time the textures by the similar path. However, this cannot be called rational solution.
The most rational solution, not concerning the network storage variant, is to organize the net shared folder, or even the whole shared disc, and to keep all project there. Then the all computers will have the mutual similar paths to project files. Like: “Project...project folder...texturename.jpg”
There is a little trick, which is even more convenient.
You may have three logic discs on server - C, D and E. And on nodes the two logic ones C, D, and one network disc E. The system, as well as 3ds Max, considers this network disc as usual. Surely the network path for the E on nodes must be the server’s logical E.
So, no matter on which you run the max-file, the all paths for it will be accessible and will look like “E:Project...project folder...”. For server and for nodes this E will be the same, just in their essence, server will handle own logical disc and nodes will handle the network one.

4 – Run the 3ds Max on server and in the V-Ray settings, in the Settings tab of the Render Scene window look for the Distributed Render area and click the Settings button. In the opened V-Ray distributed render settings window you should click the Add server button and then write there the NAME of the node, which you wish to add to the net rendering. You can know the computers name simply entering to the network form any file browser. Its network name is this needed name that you may write in the distributed render settings.
After this click OK and other button called Resolve servers. After V-Ray determines the IP address of the added node, you can see it in the nodes list.

That is all. The network computer is now joined to the distributed render. Press Shift+Q and enjoy the speeded rendering 🙂

The other nodes can be added in the same way.

12 Mar, 2011 RenderStuff (Staff Author)
13 Mar, 2011 # Re: Using Vray distributed rendering
After such config you are free from any setups regarding distributed rendering. Just work with projects in the network shared folder and all system work great. With the lapse of time you wouldn't even notice that your rendering is distributed. For you, as user, it does not differ from classic one, just keep you nodes on with running vray spawner when you render.

12 Mar, 2011 Yurshe
13 Mar, 2011 # Re: Using Vray distributed rendering
Awesome 🙂 Thank you for this exhaustive explanation. I shall surely try this!

13 Mar, 2011 Evsy
13 Mar, 2011 # Re: Using Vray distributed rendering
I’ll try... with my two home computers

13 Mar, 2011 stal
13 Mar, 2011 # Re: Using Vray distributed rendering
Just tried to setup distributed rendering on two machines. But in result the second computer gives only the blank dark squares. (they rather not black, but color of the render – environment)

13 Mar, 2011 Evsy
13 Mar, 2011 # Re: Using Vray distributed rendering
The render-farm is good thing, but I am quite doubtful about buying 10 computers for rendering (thus I occupy all the area in my office/home). Is there any stations which have the CPU and RAM only? If is, how are they named and where can I look on their configuration and price.

12 Mar, 2011 RenderStuff (Staff Author)
13 Mar, 2011 # Re: Using Vray distributed rendering
Firstly, there are server solutions, which are completed in the small cases and are collected into the frame. In such frame, the 10 computers will occupy the very small area. The main issue with those, it is the noise they produce. But, anyway, their main plus is the server technologies allows setting two or more CPUs to one motherboard. So, the one server computer may be equipped with two quad-core CPUs or even six-core ones, and the one computer will have 8-12 physical CPU cores.

Secondly, there are the complete workstations, for example:

Dell Precision http://www.dell.com/us/en/enterprise/desktops/workstation-precision-t7500/pd.aspx?refid=workstation-precision-t7500&s=biz&cs=555
There one case has two CPUs.

There are similar solutions from Apple:
MacPro http://www.apple.com/macpro

Here is the most render-oriented producer of workstations:
http://www.boxxtech.com
This guys doing everything for farms and CG in general.
Here’s their specific stuff – The Renderfarm on Wheels 😁
http://www.boxxtech.com/products/ROW/row_overview.asp

and so on…

Long and short of it, there is no any magic and nothing is better in price/quality ratio except several usual computers connected into a network. All other available solutions lose in this aspect.

13 Mar, 2011 Evsy
13 Mar, 2011 # Re: Using Vray distributed rendering
Useful information. Thanks renderstuff

13 Mar, 2011 Valch
13 Mar, 2011 # Re: Using Vray distributed rendering
My rendering through network is well. But, after the first start of the spawner, its repeating shutdown and loading may occur. Surprising that when I run with spawner the backburner server or manager built-in 3ds max just once, everything become to work perfectly.

13 Mar, 2011 eddy
13 Mar, 2011 # Re: Using Vray distributed rendering
Please advise, are there chances that the result be better if I connect two computers with the network cable? In particular, I want to connect my stationary computer (CPU 3.03 Ghz) to the notebook (2 cores 1.8 Ghz each).
What exactly do I need for this? Read the discussion, but haven’t found the concrete answer 🙂

12 Mar, 2011 RenderStuff (Staff Author)
13 Mar, 2011 # Re: Using Vray distributed rendering
eddy, please ask more exactly.

If you haven’t understood something in this subject, ask the exact question and we will help you. If you haven’t understood anything at all, read until you have exact questions 😉

There are no simple answers to the complex questions 🙂

13 Mar, 2011 Evsy
13 Mar, 2011 # Re: Using Vray distributed rendering
I have configured everything, clicking Render.
V-ray telling me:
warning: Could not connect to host 192.168.1.106
warning: Could not connect to host 192.168.1.102

106 (from this I start a scene)
102 (this one helps to render)

12 Mar, 2011 RenderStuff (Staff Author)
13 Mar, 2011 # Re: Using Vray distributed rendering
So you’ve started the vray spawner on both machines? Or on 102 only?

13 Mar, 2011 Evsy
13 Mar, 2011 # Re: Using Vray distributed rendering
I have running spawners on 102nd only. I do not know what wonder, but it begun to render on other computer by some reason. I’ve just changed their roles.

13 Mar, 2011 Evsy
13 Mar, 2011 # Re: Using Vray distributed rendering
Why V-Ray giving me these errors?

12 Mar, 2011 RenderStuff (Staff Author)
13 Mar, 2011 # Re: Using Vray distributed rendering
Usually most of the issues, maybe all of them, which arise during the distributed rendering, are caused by the actual network. For example, usually because of tricky tools of the non-server OS, which are the all versions of XP, Vista and Win7.

Make any simple operation, for example rename the network computer and count the needed restarts until OS understand and remove the already non-existing computer from the network devices list 🙂 There are lot of such problems.
Of course any software will err with such network.

It is not without reason Windows Server price is much higher comparing to home versions.

Have you got everything clear with the network drive? Are the paths to the textures OK?

By the way, we have organized the network storage and now all the projects are always on this storage and there is no need to open access to textures from one computer to other 🙂

13 Mar, 2011 Dim
13 Mar, 2011 # Re: Using Vray distributed rendering
I have two configured to distributed render computers. When I render animation, the both computers render the first frame, but on the second frame the one of the computers disappear. May I something setup to second computer begin to render the second frame or it renders the next frame already?

12 Mar, 2011 RenderStuff (Staff Author)
13 Mar, 2011 # Re: Using Vray distributed rendering
Dim, if you render the scene with the indirect illumination, then the GI renders first, and only after this the rendering of the actual image begins.
It is very likely that you main computer (server) is simply faster than other (nodes) and they cannot render the GI before or in time comparing to the server. It is can be, for example, if you use Light cache as the primary bounces GI engine. Moreover, nodes need a little more time to initialize new rendering, which is the new animation frame, and they again cannot run as fast as server because of this.
For this not to occur, you need all the computers have nearly similar computational speed, that is CPU clock rate, cores number etc.

If you have all the computers different, as an option, you can calculate the GI separately, save it and then load it during the image rendering. Nut this is possible only if you have scene, where only the camera moves. If the objects in your animation not static, then you actually have no convenient way out of this situation with different computers.

As a variant, try to render the second frame from the start, maybe the issue in it. In addition, you may what vray log writes. This is the windows with the logs of the rendering process, which pops up after render starts. As a rule, all problems are visible there clearly.

13 Mar, 2011 Ser
13 Mar, 2011 # Re: Using Vray distributed rendering
Isn’t it easier to split this scene between computers manually and not to confuse you with distributed rendering? Or will it be slower, have someone tried?

13 Mar, 2011 Ivan
13 Mar, 2011 # Re: Using Vray distributed rendering
Question: got two computers with windows Vista 64 Max 2009 and after starting spawner it appears and disappears in tray. Why is this happening? Thanks

12 Mar, 2011 RenderStuff (Staff Author)
13 Mar, 2011 # Re: Using Vray distributed rendering
It is important to run vray spawner from its original folder, not from other place. Originally, it is in the root 3ds Max folder. Usually it may disappear from the tray if it does not find the max dummy (vray_server_scene.max) in the folder it is, that is when you replace the vrayspawner90.exe somewhere else.

13 Mar, 2011 Ivan
13 Mar, 2011 # Re: Using Vray distributed rendering
I run it from the root. I thought the issue in the windows itself, because on the home computer everything works well. In this subject I've found the answer about backburner. Will try this.

13 Mar, 2011 CG Mor
13 Mar, 2011 # Re: Using Vray distributed rendering
I have tried the distributed render. Actually it’s working 🙂 But one question.

The computers, which I’ve connected for rendering, are dual-core, but they worked with one core only, with one rendering bucket, ie load was 50%. Why so? How can I make them work full load?

13 Mar, 2011 CG Mor
13 Mar, 2011 # Re: Using Vray distributed rendering
How many nodes I can use in distributed rendering maximum?

12 Mar, 2011 RenderStuff (Staff Author)
13 Mar, 2011 # Re: Using Vray distributed rendering
When had the one core joined the process? When you’ve calculated the GI or during the actual image rendering?
It is better if you give the screenshot, so we can see what is happening on render and paste here what does the vray log writes 😉
The maximum of rendering computers depends on the software license, and theoretically – any number. The renderfarms join the thousands of computers.

Add a comment

Name:  


Anti-spam challenge (please check if you agree with this and uncheck if not)
Yes, I am a spam-bot.
Yes, I am a human.
Terms of Service

RenderStuff © 2008