Gabriel Cirio wrote:
> Hello,
> 
> we are trying to set up an OpenSG cluster system on top of VRJuggler, to
> use on a cluster of 4 rendering nodes plus 1 control computer. The
> OpensSG cluster seems to be working (in its initialization phase and
> syncing of changelists), but the servers (rendering nodes) block after
> VRJuggler's draw routine (where the OpenSG syncing and rendering is
> done). There is no VRJuggler barrier (syncing point) after the draw
> routine, and the servers should go to their contextPostDraw routine
> immediately after the draw routine, but they block after the last line
> of code of the draw routine.

I don't understand what you mean here. The code can't be blocking on
returning from the vrj::OpenSGApp::draw() function. Based on how you
describe the situation, it's either stuck in vrj::GlPipe::renderWindow() or
some OpenSG function called from vrj::OpenSGApp::draw() isn't returning.

> The client (control computer), however,
> goes to contextPostDraw after draw, and then to postFrame, which has a
> VRJuggler syncing point, and therefore blocks there since it is waiting
> for the servers to reach that same point and sync.
> 
> This happens when VRJuggler is launched on cluster mode. In standalone
> mode (no VRJuggler cluster), the application works fine, and we can
> control what is being rendered through the control computer (thanks to
> the OpenSG cluster). In VRJuggler's cluster mode, the only frame that we
> should be seeing (before the servers blocking) is not even rendered.
> 
> We are using a ClusterWindow on the client side, and a ClusterServer on
> the server side, with a PassiveWindow, PassiveViewport and
> PassiveBackground, since VRJuggler takes care of window and context
> creation.
> 
> Does anybody have any idea of why this is happening?

Have you found exactly what is hanging on the client side (using "client" in
the OpenSG context) and causing the deadlock? It sounds like something is
waiting on network communication to come from the servers. However, if
vrj::GlPipe::renderWindow() were stuck in an infinite loop trying to render
the viewports of the window, that would account for it, too.

 -Patrick


-- 
Patrick L. Hartling
VP Engineering, Infiscape Corp.
http://www.infiscape.com/

Attachment: signature.asc
Description: OpenPGP digital signature

-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Opensg-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensg-users

Reply via email to