PDA

View Full Version : Linux render node - first experiences & bugs



markus
03-07-2003, 04:42 AM
I haven't even installed the upgrade yet, but have already checked out the linux render node :D

Well, it seems I found a bug: When starting the node through one of the two shell scripts, but without giving any arguments, the node crashes with

/usr/share/lwsn-7.5b/runsn2.sh
LightWave Linux ScreamerNet Module (Build 582)
/usr/share/lwsn-7.5b/runsn2.sh: line 4: 2075 Segmentation fault ./lwsn -2 -c/usr/share/lwsn-7.5b/.lwext3rc $*


I'll continue to do some testing now.

And what about a Linux area in the message boards? ;)

markus
03-07-2003, 05:45 AM
Three more things that I noticed:

1. The SN node does not seem to resolve symbolic links!!

2. Shell refresh is way too fast. It displays about 100 lines of 'LightWave command: xxx' per second. If you would pipe the shell output into a text file (e.g. for creating a render log file) it would be several megs large in no time.
It also causes significant processor usage on my Samba server which holds the jobX and ackX files.

3. What is this error supposed to be? How could I have a drive G under linux?!
LightWave command: load.
Loading "G:\Lightwave\Content\Misc\Scenes\radiosity_room01. lws".
Error: Can't open scene file.
Scene loaded.
I am using the -d option to provide the correct (linux)path to the content directory, /mnt/Samba/.... in this case.


Please, NewTek support, help me out or post documentation on the correct usage. Just saying 'proceed as usual' in the readme is not too good.

Chris
03-07-2003, 08:49 AM
I too noticed that when running, the lwsn process uses tons of CPU resources - something like 60%! And it is just waiting for messages. I actually had to open up another shell to kill the process.

And that segfault when running without any args was a surprise!

On the bright side, the RPM installed flawlessly. Took me a few moments to locate lwsn after the install though. It's in /usr/share :-)

I'll try to get it to render something over the weekend.

markus
03-07-2003, 09:39 AM
You can check where files inside a rpm will go before installing. Just type 'rpm -qpl' plus the rpm's filename and it'll list the files inside the package.

I have given up trying to get it to work. Since it does not seem to be a straightforward process of setting it up, I don't understand why NewTek hasn't documented it!

Conclusion ;) : I can't get anything good from the Linux rendernode, except a display of good will of NewTek by having released it at all...

jgutwin
03-07-2003, 11:16 AM
For your test, did you use samba to connect to your windows machine?

John

markus
03-07-2003, 01:29 PM
The project files and the render control files (jobX and ackX) both lie on a linux server running samba.

The ScreamerNet controller running LW is of course a Windows machine, which has the samba directory mounted as a network harddrive.

The machine that I want to run the linux node on is a linux machine, which has the same samba share that the windows pc uses, mounted into a directory under /mnt.

--

This has been working with Wine so far, so I don't see a reason as to why a native rendernode shouldn't be able to run as well.

shorn
03-11-2003, 07:48 AM
Well my experience with the Linux LWSN is similar. I did get the Linux node to accept a scene file and start working it, but it just rifles through the frames in .5 seconds each (they take about a minute each to render on Windows) and doesn't report any problems. In fact, it reports that it's saving the .tga image file to the location on the linux box that I specified, except there is no file written.

Using the -3 option (local render, no screamernet) with all files on the local Linux box produced slightly better results. Each frame takes the right amount of time to process and it mentions each object it's moving etc., but again the image output reports success but there is no file written there (or anywhere else).

And does anyone know what the build_ext3 program is for?

NewTek, some help please?

markus
03-11-2003, 08:07 AM
How did you get the node to not look for a Windows harddrive letter (e.g. 'G:\')?

Beettlle
03-11-2003, 03:06 PM
Originally posted by shorn
Using the -3 option (local render, no screamernet) with all files on the local Linux box produced slightly better results. Each frame takes the right amount of time to process and it mentions each object it's moving etc., but again the image output reports success but there is no file written there (or anywhere else).

I'm getting the same behaviour when dealing with the -3 flag. And no documentation anywhere. :( I've gone in and edited the .lws file by hand changing the RGBImagesPrefix variable. I thought that if I explicitly tell it where I want the images, but didn't work.


Originally posted by shorn
And does anyone know what the build_ext3 program is for?

I'm wondering about this as well. I tried running it inside a tmp directory I created and I saw no change.

I wish the RPM would come with documentation. The documentation in the manual is less than satisfactory.

shorn
03-11-2003, 04:13 PM
Originally posted by markus
How did you get the node to not look for a Windows harddrive letter (e.g. 'G:\')?

That's pretty easy, but you have to be thorough. First off, you want to make sure that the scene was set up using only files that exist under your currently-defined content directory. Then, in addition you have to make sure that the objects themselves aren't referencing full-path files. The only way I've found to fix this is to make sure the full-path to the file is NOT available, and then when loading the object you will get an error that it can't find the item. At that point you need to point lightwave to a path that does exist within your content directory.

After saving your scene file, you can open it in a text editor and look for the file paths. They should all be something like "objects/spaceships/coolspaceship.lwo" as opposed to "g:\lightwave\content\objects\spaceships\
coolspaceship.lwo"

As mentioned by Beettlle, you can edit the RGBImagesPrefix variable in the scene file to reference an available location on your linux box - preferrably some network folder that is accesible from all your linux render nodes (you do have dozens of them, right? :)) assuming that the linux box itself is not your file server (mine is, I recommend it!). But so far LWSN has not produced an image file for me. :(

wapangy
03-11-2003, 11:18 PM
Originally posted by shorn
Well my experience with the Linux LWSN is similar. I did get the Linux node to accept a scene file and start working it, but it just rifles through the frames in .5 seconds each (they take about a minute each to render on Windows) and doesn't report any problems. In fact, it reports that it's saving the .tga image file to the location on the linux box that I specified, except there is no file written.

Using the -3 option (local render, no screamernet) with all files on the local Linux box produced slightly better results. Each frame takes the right amount of time to process and it mentions each object it's moving etc., but again the image output reports success but there is no file written there (or anywhere else).

And does anyone know what the build_ext3 program is for?

NewTek, some help please?

I get the Exact same thing in -3 mode. And I have tried editing the image path save thing in the scene file.

When trying -2 mode I can't get it to initialize. I am using Mac OS X for the controller, connecting the two by using NFS. I'm sure that part is working fine, and that all the privaleges are right. But it still seems to be having problems writing and reading the job and ack files. Sometimes it does read and write those, but the Mac still never sees it as a node.

(I'm using RedHat 8.)

NewTek- How did you get this to work?

Phil
03-12-2003, 03:38 AM
build_ext3 seems to be responsible for creating the lwext3.cfg file with all the plugins. Not sure, but they may be expecting early delivering of screamernet only plugins from 3rd party vendors.

I still get the segmentation error here - what exactly do I need to do to get the node up and running? I expected that running either script would simply stick the system into wait mode for incoming jobs.

markus
03-12-2003, 04:21 AM
-snip- (Copy of my post from the linux rendernode feature request thread)
I have tried running the node with '/usr/share/lwsn-7.5b/runsn2.sh -d/mnt/Samba_Grp_Lan/Lightwave/Content/Misc/ /mnt/Samba_Grp_Lan/Lightwave/ScreamerNet/job2 /mnt/Samba_Grp_Lan/Lightwave/ScreamerNet/ack2'

It does register as a rendernode on the Windows machine, but as posted above, it'll then try to find a drive G: when rendering starts. Drive G is the same Samba-share as the one mounted under '/mnt/Samba_Grp_Lan', but only on the Windows side where LW is running. The '-d' command seems to be ignored.

--

And for those of you who want to run the node through wine, here's a command that you can use to have a KDE shortcut on your desktop:
'konsole -e wine -- "C:\Program Files\Lightwave\Programs\LWSN.exe" -2 -cG:\\Lightwave\\Configs -dG:\\Lightwave\\Content\\Misc G:\\Lightwave\\ScreamerNet\\job2 G:\\Lightwave\\ScreamerNet\\ack2'
You'll have to put your Samba-share into the wine config under '~/.wine/config' for it to work.
The entry would be
[Drive G]
"Path" = "/mnt/Samba_Grp_Lan"
"Type" = "hd"
"Label" = "LAN"
"Filesystem" = "win95"
in my case.
Of course, all plugins and scripts will have to reside on the network drive as well, and they have to be entered with the network path in the various LW config files.
-snap-

markus
03-12-2003, 04:26 AM
Originally posted by shorn

After saving your scene file, you can open it in a text editor and look for the file paths. They should all be something like "objects/spaceships/coolspaceship.lwo" as opposed to "g:\lightwave\content\objects\spaceships\
coolspaceship.lwo"


I understand what you are going for, but I still have two concerns.
First, the node already tries to search for drive G when it is supposed to load the scenefile. So I'm not even getting to the point where the objects are loaded because it can't find the scenefile.
Second, having to manually edit the scenefile is not really a great solution in the long term. This is not your fault though - more that of NT ;)

wapangy
03-12-2003, 08:32 AM
Originally posted by markus
It does register as a rendernode on the Windows machine, but as posted above, it'll then try to find a drive G: when rendering starts.

On Mac OS X it does NOT register, did NewTek even test this on a Mac?

This better be fixed when they rerelease 7.5b for the mac.

shorn
03-12-2003, 09:51 AM
Originally posted by markus
First, the node already tries to search for drive G when it is supposed to load the scenefile. So I'm not even getting to the point where the objects are loaded because it can't find the scenefile.

Hmm, I did not have that problem. The Windows Screamernet conroller submits the job to the Linux LWSN and it does not complain about not being able to find the scene file. I'm pretty sure it actually opens the scene file because it knows at least how many frames are to be rendered. Nothing else about the scene works, however :(

I wonder if making sure your scene file is within your defined content directory will get you past this error?

bakasaru
03-12-2003, 03:38 PM
Originally posted by markus
I understand what you are going for, but I still have two concerns.
First, the node already tries to search for drive G when it is supposed to load the scenefile. So I'm not even getting to the point where the objects are loaded because it can't find the scenefile.
Second, having to manually edit the scenefile is not really a great solution in the long term. This is not your fault though - more that of NT ;)

The -d switch is not working as expected with the Linux client, ie, Screamernet is actually prepending its assigned content directory before requesting the load from the Linux client. So if your content directory is Q:\Lightwave\content and you load toys.lws, the load command sent to Linux is Q:\Lightwave\content\scenes\toys.lws. I've circumvented this issue by using lwsn -3 instead of -2.

bakasaru
03-12-2003, 04:07 PM
As for file output with Linux nodes, you only have 4 choices:

Flexible Format (.flx)
IFF ILBM Format (.iff)
IFF32 ILBM Format (.iff)
Targa Format (.tga)*


*specifically, ie, not LW_TGA24 (.tga) or LW_TGA32 (.tga)

If your RGB output isn't on this list, you won't get any file output.

shorn
03-12-2003, 11:40 PM
Originally posted by bakasaru
As for file output with Linux nodes, you only have 4 choices:

Flexible Format (.flx)
IFF ILBM Format (.iff)
IFF32 ILBM Format (.iff)
Targa Format (.tga)*


*specifically, ie, not LW_TGA24 (.tga) or LW_TGA32 (.tga)

If your RGB output isn't on this list, you won't get any file output.

Thanks, changing the RGBImageSaver to _Targa in my scene file worked. I have frames!

wapangy
03-12-2003, 11:41 PM
By the way, what do you guys normaly use for exporting frames? Is there a best?

markus
03-13-2003, 07:33 AM
Originally posted by bakasaru
As for file output with Linux nodes, you only have 4 choices:

Flexible Format (.flx)
IFF ILBM Format (.iff)
IFF32 ILBM Format (.iff)
Targa Format (.tga)*


*specifically, ie, not LW_TGA24 (.tga) or LW_TGA32 (.tga)

If your RGB output isn't on this list, you won't get any file output.

[email protected]:~> l /usr/share/lwsn-7.5b/plugins/input-output/
total 1465
drwxr-xr-x 2 root root 648 Mar 7 11:34 ./
drwxr-xr-x 8 root root 200 Mar 7 11:34 ../
-rwxr-xr-x 1 root root 8352 Feb 26 21:21 alias.p*
-rwxr-xr-x 1 root root 118256 Feb 26 21:21 aura_exporter.p*
-rwxr-xr-x 1 root root 18912 Feb 26 21:21 bmp.p*
-rwxr-xr-x 1 root root 28016 Feb 26 21:21 drla.p*
-rwxr-xr-x 1 root root 122480 Feb 26 21:21 epsexport.p*
-rwxr-xr-x 1 root root 116144 Feb 26 21:21 hotvideo.p*
-rwxr-xr-x 1 root root 11616 Feb 26 21:21 iff.p*
-rwxr-xr-x 1 root root 112528 Feb 26 21:21 jpeg.p*
-rwxr-xr-x 1 root root 12000 Feb 26 21:21 pcx.p*
-rwxr-xr-x 1 root root 16544 Feb 26 21:21 pict.p*
-rwxr-xr-x 1 root root 265440 Feb 26 21:21 png.p*
-rwxr-xr-x 1 root root 11872 Feb 26 21:21 psd.p*
-rwxr-xr-x 1 root root 11488 Feb 26 21:21 rla.p*
-rwxr-xr-x 1 root root 10848 Feb 26 21:21 sgi.p*
-rwxr-xr-x 1 root root 16736 Feb 26 21:21 sgi64.p*
-rwxr-xr-x 1 root root 10080 Feb 26 21:21 sun.p*
-rwxr-xr-x 1 root root 8544 Feb 26 21:21 tga.p*
-rwxr-xr-x 1 root root 359136 Feb 26 21:21 tiff.p*
-rwxr-xr-x 1 root root 150384 Feb 26 21:21 videotap.p*
-rwxr-xr-x 1 root root 8800 Feb 26 21:21 vidfilt.p*
-rwxr-xr-x 1 root root 12912 Feb 26 21:21 vpb.p*
-rwxr-xr-x 1 root root 15520 Feb 26 21:21 watermrk.p*
-rwxr-xr-x 1 root root 8480 Feb 26 21:21 yuv.p*

Judging from this list, I'd say it has to be possible to get even more formats rendered.



Originally posted by wapangy

By the way, what do you guys normaly use for exporting frames? Is there a best?

There is no best.
I usually use DeluxeRLA together with the ASA_BufferSaver plugin. That way I can export individual channels (specular, diffuse, ... = multipass rendering) and import the images at 16bit per channel into my compositing application.



And thanks for the -3 tip. I'll try it out later.

shorn
03-13-2003, 09:44 AM
Originally posted by markus
Judging from this list, I'd say it has to be possible to get even more formats rendered.

Yes, all these plug-ins exist, and they are all defined in the .lwext3rc config file, but they don't work for some reason.

Even more curious, _Targa (not the LW_TGA) does *not* have a pointer to an output plug-in, like the rest of them do,
yet it is one of the output formats that works!

bakasaru
03-13-2003, 09:49 AM
There must be some reason the listed output formats don't work, I'm just not sure what that may be. I edit a scene file in visual notepad, changing the output path to a Linux compatible format, a la, /mnt/share/rgb001, and saved. Then loaded the scene in Layout and looked at Render Options, Output and it seems the app interpreted the Linux path as it only gave me 4 output format choices in the drop down box from the GUI.

Someday soon, I hope NT will chime in on this thread or another and key us in on some details or nuances of the Linux piece.

tschne
03-14-2003, 02:10 AM
I have experienced the same problem.
Installed it, executed and got segmentation fault.

I think that we need more info from newtek on the set-up, i.e.

-mount the resp. network drives with smbclient ( I assume ).
-Prerequisites for running LWSN on Linux.

A statement like "installation like on all other OS's" is not really sufficient.

garg
04-11-2003, 03:31 PM
This thread saved me from the disperation :mad: . LWSN on linux was rendering just fine but no save... I cannot understand this stupid _Targa format... where does it come from ?

How did some one discover it ?

Alain

IcemanErwin
07-30-2003, 01:15 PM
I have installed the rpm from the 7.5b-update (still available from ftp) and gave lwsn a try on linux.

After having loads of trouble I found this howto:

http://lwbeginner.hypermart.net/lwsnlinux.html
after using that document I can indeed render jpg´s.
But I still need to know how to render an avi like on windows.

Does anyone ever succeeded in rendering an avi on Linux?
If so, please tell us how you did it.

Greetings,

Erwin

Ps. I don´t understand Lightwave but if all products work like lwsn on linux I do know NEWTEK does a louzy job.