TWiki home VRJ Wiki > Juggler > OradDVGCluster (r1.1 vs. r1.7) VRJ Wiki webs:
Juggler | VRJPlanning | Main | TWiki | Test
Juggler . { Home | Changes | Index | Search | Go }
 <<O>>  Difference Topic OradDVGCluster (r1.7 - 11 Oct 2004 - DanielShipton)

META TOPICPARENT WebHome
DVG Cluster How To
Line: 118 to 118

  • The wrapper settings can override and/or extend other graphics board specific settings. For example with nvidia Linux boards the antialiasing mode can be overridden by the wrapper configuration.
Added:
>
>
  • The wrapper does not like to work with multi-threaded apps that Juggler creates. So, in a bind you can run the RunDvgGL? script with glxgears for a minute to get the state set for the boards and then simply run your app without the wrapper.

META FILEATTACHMENT DvgGL?-four.cfg attr="" comment="Example DvgWrapper config file. (2x2 Split)" date="1071165807" path="DvgGL-four.cfg" size="897" user="AronBierbaum" version="1.1"
META FILEATTACHMENT cluster.sim.jconf attr="h" comment="VR Juggler Clustered Simulator Config File" date="1071170253" path="cluster.sim.jconf" size="32851" user="AronBierbaum" version="1.1"
META FILEATTACHMENT orad.cluster.jconf attr="h" comment="VR Juggler cluster config file." date="1071170309" path="orad.cluster.jconf" size="1630" user="AronBierbaum" version="1.1"

 <<O>>  Difference Topic OradDVGCluster (r1.6 - 13 Jan 2004 - AronBierbaum)

META TOPICPARENT WebHome
DVG Cluster How To
Line: 120 to 121

META FILEATTACHMENT DvgGL?-four.cfg attr="" comment="Example DvgWrapper config file. (2x2 Split)" date="1071165807" path="DvgGL-four.cfg" size="897" user="AronBierbaum" version="1.1"
META FILEATTACHMENT cluster.sim.jconf attr="h" comment="VR Juggler Clustered Simulator Config File" date="1071170253" path="cluster.sim.jconf" size="32851" user="AronBierbaum" version="1.1"
META FILEATTACHMENT orad.cluster.jconf attr="h" comment="VR Juggler cluster config file." date="1071170309" path="orad.cluster.jconf" size="1630" user="AronBierbaum" version="1.1"
Changed:
<
<
META FILEATTACHMENT example.dvg.jconf attr="" comment="Example VR Juggler configuration file. (2x2 Split)" date="1071170604" path="example.dvg.jconf" size="54704" user="AronBierbaum" version="1.1"
>
>
META FILEATTACHMENT example.dvg.jconf attr="" comment="Example VR Juggler configuration file. (2x2 Split)" date="1074022813" path="example.dvg.jconf" size="59865" user="AronBierbaum" version="1.2"

 <<O>>  Difference Topic OradDVGCluster (r1.5 - 11 Dec 2003 - AronBierbaum)

META TOPICPARENT WebHome
DVG Cluster How To
Line: 13 to 13

DVG Configuration Files

Changed:
<
<
In order for the DvgWrapper to know how to set up the compositing chain, you must provide a configuration file that specifies the compositing methods to be used. As the DVG documentation explains, there are multiple ways to specify a DVG wrapper configuration file. We recommend that you specify the configuration file by setting the DVG_GL_CONFIG environment variable. For example to use the attached example configuration file for a 4×4 tiled screen:
>
>
In order for the DvgWrapper to know how to set up the compositing chain, you must provide a configuration file that specifies the compositing methods to be used. As the DVG documentation explains, there are multiple ways to specify a DVG wrapper configuration file. We recommend that you specify the configuration file by setting the DVG_GL_CONFIG environment variable. For example to use the attached example configuration file for a 4×4 tiled screen:

   setenv DVG_GL_CONFIG /home/aronb/dvgconfig/DvgGL-four.cfg
Line: 117 to 117

  • Machine naming and resolving: In their default configurations, system utilities may not all return the same hostname information for a given DVG node due to the way networking, /etc/hosts, and various other settings of configured. This can cause some problems with VR Juggler clustering and with user-developed scripts.

  • The wrapper settings can override and/or extend other graphics board specific settings. For example with nvidia Linux boards the antialiasing mode can be overridden by the wrapper configuration.
Changed:
<
<

META FILEATTACHMENT DvgGL?-four.cfg attr="" comment="Example DvgWrapper config file (2x2 Split)." date="1071165807" path="DvgGL-four.cfg" size="897" user="AronBierbaum" version="1.1"
>
>
META FILEATTACHMENT DvgGL?-four.cfg attr="" comment="Example DvgWrapper config file. (2x2 Split)" date="1071165807" path="DvgGL-four.cfg" size="897" user="AronBierbaum" version="1.1"
META FILEATTACHMENT cluster.sim.jconf attr="h" comment="VR Juggler Clustered Simulator Config File" date="1071170253" path="cluster.sim.jconf" size="32851" user="AronBierbaum" version="1.1"
META FILEATTACHMENT orad.cluster.jconf attr="h" comment="VR Juggler cluster config file." date="1071170309" path="orad.cluster.jconf" size="1630" user="AronBierbaum" version="1.1"
META FILEATTACHMENT example.dvg.jconf attr="" comment="Example VR Juggler configuration file. (2x2 Split)" date="1071170604" path="example.dvg.jconf" size="54704" user="AronBierbaum" version="1.1"

 <<O>>  Difference Topic OradDVGCluster (r1.4 - 11 Dec 2003 - AronBierbaum)

META TOPICPARENT WebHome
DVG Cluster How To
Line: 117 to 117

  • Machine naming and resolving: In their default configurations, system utilities may not all return the same hostname information for a given DVG node due to the way networking, /etc/hosts, and various other settings of configured. This can cause some problems with VR Juggler clustering and with user-developed scripts.

  • The wrapper settings can override and/or extend other graphics board specific settings. For example with nvidia Linux boards the antialiasing mode can be overridden by the wrapper configuration.
Added:
>
>

META FILEATTACHMENT DvgGL?-four.cfg attr="" comment="Example DvgWrapper config file (2x2 Split)." date="1071165807" path="DvgGL-four.cfg" size="897" user="AronBierbaum" version="1.1"

 <<O>>  Difference Topic OradDVGCluster (r1.3 - 10 Dec 2003 - PatrickHartling)

META TOPICPARENT WebHome
DVG Cluster How To
Line: 9 to 9

Introduction

Changed:
<
<
The purpose of this document is to explain how to run a VR Juggler cluster application on a ORAD DVG cluster. At the time of writing this document the ORAD system has only been tested with two compositing modes, Split Image and Multi-Sampling/Anti-Alias. This document will briefly explain the needed DvgWrapper and VR Juggler configuration files along with providing tips to help you along the way.
>
>
The purpose of this document is to explain how to run a VR Juggler cluster application on a ORAD DVG cluster. At the time of this writing, the ORAD system has only been tested with two compositing modes: Split Image and Multi-Sampling/Anti-Alias. This document will briefly explain the needed DvgWrapper and VR Juggler configuration files along with providing tips to help you along the way.

DVG Configuration Files

Changed:
<
<
In order for the DvgWrapper to know how to set up the compositing chain you must provide a configuration file that specifies the compositing methods to be used. As the DVG documentation explains, there are multiple ways to specify a DVG wrapper configuration file. We recommend that you specify the configuration file by setting the DVG_GL_CONFIG environment variable. For example to use the attached example configuration file for a 4x4 tiled screen:
>
>
In order for the DvgWrapper to know how to set up the compositing chain, you must provide a configuration file that specifies the compositing methods to be used. As the DVG documentation explains, there are multiple ways to specify a DVG wrapper configuration file. We recommend that you specify the configuration file by setting the DVG_GL_CONFIG environment variable. For example to use the attached example configuration file for a 4×4 tiled screen:

   setenv DVG_GL_CONFIG /home/aronb/dvgconfig/DvgGL-four.cfg
Changed:
<
<
Note: This must be set to your local configuration files unless you happen to be aronb and having files named exactly as above. smile
>
>
Note: This must be set to your local configuration files.

Changed:
<
<
Before discussing the specific compositing methods and how you configure them it is worth noting a few key sections of the attached example configuration files that remain the same for all compositing methods. These sections will be explained briefly below.
>
>
Before discussing the specific compositing methods and how you configure them, it is worth noting a few key sections of the attached example configuration files that remain the same for all compositing methods. These sections will be explained briefly below.

Changed:
<
<
Please see the dvg wrapper documentation for more detailed descriptions of all the following options. We will only discuss them as they pertain to VR Juggler operation.
>
>
Please see the DVG wrapper documentation for more detailed descriptions of all the following options. We will only discuss them as they pertain to VR Juggler operation.

Basic DVG Settings

Line: 58 to 58

Synchronization Configuration

Changed:
<
<
To correctly configure the syncronization of the DVG cluster you must specify three things, SyncronizeDelay, SynchronizeOn, and a list of render nodes in your chain. The SyncronizeDelay attribute specifies the number of synchronization points that are initially skipped in order to ensure proper start-up of your application. The default value is 50, but smaller values will also work. The SynchronizeOn specifies which OpenGL command the DvgWrapper will wait for to initiate each synchronization barrier.
>
>
To correctly configure the syncronization of the DVG cluster, you must specify three things: SyncronizeDelay, SynchronizeOn, and a list of render nodes in your chain. The SyncronizeDelay attribute specifies the number of synchronization points that are initially skipped in order to ensure proper start-up of your application. The default value is 50, but smaller values will also work. The SynchronizeOn specifies which OpenGL command the DvgWrapper will wait for to initiate each synchronization barrier.

  <Synchronization>
Line: 74 to 74

Configuring your application to work properly on a DVG cluster is identical to any other configuration. There are a few things that you should keep in mind while creating the configuration files though.

Changed:
<
<
DisplayWindows will only be visible at the end of the DVG composite chain if they are opened on the proper section of the X Server and are of the correct size. For example, assume that you have a single monitor attached to the last node in your DVG composite chain of four render nodes. Lets also assume that your final resolution is 1280x1024 and you want to split the image into four quadrants:
>
>
DisplayWindows will only be visible at the end of the DVG composite chain if they are opened on the proper section of the X Server and are of the correct size. For example, assume that you have a single monitor attached to the last node in your DVG composite chain of four render nodes. Let's also assume that your final resolution is 1280×1024 and you want to split the image into four quadrants:

+---------------------+
Line: 108 to 108

  • warning - Only display warnings and errors.
  • info - Show a more verbose level of debug output.
Changed:
<
<
The last environment variable discussed, DVG_NO_NOISE, disables the PC speaker that makes noises while initializing the DVG composite chain.
>
>
The last environment variable discussed, DVG_NO_NOISE, disables the PC speaker that makes noises while initializing the DVG composite chain.

Changed:
<
<

Misc Issues

>
>

Miscellaneous Issues


There are several issues that we have run into that can be good to watch for.

Changed:
<
<
  • Machine naming and resolving: In their default configurations, system utilities may not all return the same hostname information for a given DVG node due to the way networking, /etc/hosts, and various other settings of configured. This can cause some problems with VR Juggler clustering and with user-developed scripts.
>
>
  • Machine naming and resolving: In their default configurations, system utilities may not all return the same hostname information for a given DVG node due to the way networking, /etc/hosts, and various other settings of configured. This can cause some problems with VR Juggler clustering and with user-developed scripts.

Changed:
<
<
  • The wrapper settings can override and/or extend other graphics board specific settings. For example with nvidia linux boards the antialiasing mode can be overridden by the wrapper configuration
>
>
  • The wrapper settings can override and/or extend other graphics board specific settings. For example with nvidia Linux boards the antialiasing mode can be overridden by the wrapper configuration.

 <<O>>  Difference Topic OradDVGCluster (r1.2 - 10 Dec 2003 - AllenBierbaum)

META TOPICPARENT WebHome
Added:
>
>
DVG Cluster How To

Written by: Infiscape Corporation
Aron Bierbaum and Allen Bierbaum


Introduction

Changed:
<
<
This document was created in order to explain how to run a VR Juggler application on a ORAD DVG cluster. At the time of writing this document the ORAD system has only been tested with two compositing modes, Split Image and Multi-Sampling/Anti-Alias. This document will briefly explain the needed DvgWrapper and VR Juggler configuration files along with providing tips to help you along the way.
>
>

The purpose of this document is to explain how to run a VR Juggler cluster application on a ORAD DVG cluster. At the time of writing this document the ORAD system has only been tested with two compositing modes, Split Image and Multi-Sampling/Anti-Alias. This document will briefly explain the needed DvgWrapper and VR Juggler configuration files along with providing tips to help you along the way.


DVG Configuration Files

Changed:
<
<
In order for the DvgWrapper to know how to set up the compositing chain you must provide a configuration file that specifies what compositing methods you want to use. You must specify this configuration file by setting the DVG_GL_CONFIG environment variable. For example to use the attached example configuration file for a 4x4 tiled screen:
>
>

In order for the DvgWrapper to know how to set up the compositing chain you must provide a configuration file that specifies the compositing methods to be used. As the DVG documentation explains, there are multiple ways to specify a DVG wrapper configuration file. We recommend that you specify the configuration file by setting the DVG_GL_CONFIG environment variable. For example to use the attached example configuration file for a 4x4 tiled screen:


   setenv DVG_GL_CONFIG /home/aronb/dvgconfig/DvgGL-four.cfg
Changed:
<
<
Before getting to the specific compositing methods and how to configure them it is worth noting a few key sections of the attached example configuration files do not change. These sections will be explained briefly below.
>
>
Note: This must be set to your local configuration files unless you happen to be aronb and having files named exactly as above. smile

Before discussing the specific compositing methods and how you configure them it is worth noting a few key sections of the attached example configuration files that remain the same for all compositing methods. These sections will be explained briefly below.

Please see the dvg wrapper documentation for more detailed descriptions of all the following options. We will only discuss them as they pertain to VR Juggler operation.


Basic DVG Settings

Changed:
<
<
The first two lines shown below specify the video output format to be used. You must have the VideoMode attribute set to VR in order for the DvgWrapper to function properly. For more information about the VROutputFormat attribute consult your DVG documentation. The next attribute, GenlockSource specifies the signal coming into the chain to use for Genlock. This attribute should be set to None for proper operation. The PassThrough attribute disables all functionality of the wrapper and defaults to 0. The final attribute, SwapBarrier informs the wrapper if it should use its internal TCP/IP swap lock method. Since VR Juggler already provides a method to SwapLock the nodes, this should be disabled.
>
>
The first two lines shown below specify the video output format to be used.

Video Mode You must have the VideoMode attribute set to VR for the DvgWrapper to function properly. For more information about the VROutputFormat attribute consult your DVG wrapper documentation.
Genlocking The next attribute, GenlockSource specifies the signal coming into the chain to use for Genlock. This attribute should be set to None for proper operation.
Pass Through The PassThrough attribute disables all functionality of the wrapper and defaults to 0.
Barrier The final attribute, SwapBarrier informs the wrapper if it should use its internal TCP/IP swap lock method. Since VR Juggler already provides a method to SwapLock the nodes, this should be disabled.

  <DvgConfig
Line: 30 to 46

X Server Configuration

Changed:
<
<
There are a few X Server configuration settings that are recommended. The first MaximizeWindow forces any window opened to be full screen. This feature was tested, but seemed to only occasionally operate correctly. The last setting shown below, HideMouseCursor causes the X mouse curser to disappear.
>
>

There are a few X Server configuration settings that are recommended. The first MaximizeWindow forces any window opened to be full screen. This feature was tested, but seemed to only occasionally function. The last setting shown below, HideMouseCursor causes the X mouse curser to disappear.


  <XConfig
Line: 40 to 57

Synchronization Configuration

Changed:
<
<
In order to correctly configure the syncronization of the DVG cluster you must specify three things, SyncronizeDelay, SynchronizeOn, and a list of render nodes in your chain. The SyncronizeDelay attribute specifies the number of synchronization points that are initially skipped in order to ensure proper start-up of your application. The default value is 50, but smaller values will also work. The SynchronizeOn specifies which OpenGL command the DvgWrapper will wait for to initiate each synchronization barrier.
>
>

To correctly configure the syncronization of the DVG cluster you must specify three things, SyncronizeDelay, SynchronizeOn, and a list of render nodes in your chain. The SyncronizeDelay attribute specifies the number of synchronization points that are initially skipped in order to ensure proper start-up of your application. The default value is 50, but smaller values will also work. The SynchronizeOn specifies which OpenGL command the DvgWrapper will wait for to initiate each synchronization barrier.


  <Synchronization>
Line: 53 to 71

VR Juggler Configuration Files

Added:
>
>

Configuring your application to work properly on a DVG cluster is identical to any other configuration. There are a few things that you should keep in mind while creating the configuration files though.
Changed:
<
<
DisplayWindows will only be visible at the end of the DVG composite chain if they are opened on the proper section of the X Server and are of the correct size. For example lets assume that you have a single monitor attached to the last node in your DVG composite chain of four render nodes. Lets also assume that your final resolution is 1280x1024 and you want to split the image into four quadrants:
>
>
DisplayWindows will only be visible at the end of the DVG composite chain if they are opened on the proper section of the X Server and are of the correct size. For example, assume that you have a single monitor attached to the last node in your DVG composite chain of four render nodes. Lets also assume that your final resolution is 1280x1024 and you want to split the image into four quadrants:

Changed:
<
<

>
>



+---------------------+
   
Node 1 Node 2
Line: 67 to 86

Node 3 Node 4
   
+---------------------+
Changed:
<
<
>
>

Since all nodes are drawing an equal sized section of the final image, on each node you must open a window at the origin with the proper size.

  • Origin: (0,0)
  • Size: (640, 512)
Added:
>
>
One method we have found usefull for debugging the imaging compositing is to hook into the VGA outputs of the chain in order testing for the correct outputs on each node.

Important Environment Variables

Added:
>
>

In order for the DvgWrapper to know which X server to run your application you must set the DISPLAY environment variable to :0 on each machine before running your application as shown below.



Line: 88 to 110

The last environment variable discussed, DVG_NO_NOISE, disables the PC speaker that makes noises while initializing the DVG composite chain.

Changed:
<
<
-- AronBierbaum - 09 Dec 2003
>
>

Misc Issues

There are several issues that we have run into that can be good to watch for.

  • Machine naming and resolving: In their default configurations, system utilities may not all return the same hostname information for a given DVG node due to the way networking, /etc/hosts, and various other settings of configured. This can cause some problems with VR Juggler clustering and with user-developed scripts.

  • The wrapper settings can override and/or extend other graphics board specific settings. For example with nvidia linux boards the antialiasing mode can be overridden by the wrapper configuration

 <<O>>  Difference Topic OradDVGCluster (r1.1 - 09 Dec 2003 - AronBierbaum)
Line: 1 to 1
Added:
>
>
META TOPICPARENT WebHome

Introduction

This document was created in order to explain how to run a VR Juggler application on a ORAD DVG cluster. At the time of writing this document the ORAD system has only been tested with two compositing modes, Split Image and Multi-Sampling/Anti-Alias. This document will briefly explain the needed DvgWrapper and VR Juggler configuration files along with providing tips to help you along the way.

DVG Configuration Files

In order for the DvgWrapper to know how to set up the compositing chain you must provide a configuration file that specifies what compositing methods you want to use. You must specify this configuration file by setting the DVG_GL_CONFIG environment variable. For example to use the attached example configuration file for a 4x4 tiled screen:

   setenv DVG_GL_CONFIG /home/aronb/dvgconfig/DvgGL-four.cfg

Before getting to the specific compositing methods and how to configure them it is worth noting a few key sections of the attached example configuration files do not change. These sections will be explained briefly below.

Basic DVG Settings

The first two lines shown below specify the video output format to be used. You must have the VideoMode attribute set to VR in order for the DvgWrapper to function properly. For more information about the VROutputFormat attribute consult your DVG documentation. The next attribute, GenlockSource specifies the signal coming into the chain to use for Genlock. This attribute should be set to None for proper operation. The PassThrough attribute disables all functionality of the wrapper and defaults to 0. The final attribute, SwapBarrier informs the wrapper if it should use its internal TCP/IP swap lock method. Since VR Juggler already provides a method to SwapLock the nodes, this should be disabled.

  <DvgConfig
    VideoMode        = "VR"
    VROutputFormat   = "60.02,1280,1328,1440,1688,1024,1025,1028,1066"
    GenlockSource    = "None"
    Multisample      = "0"   
    PassThrough      = "0"
    SwapBarrier      = "0"
  />

X Server Configuration

There are a few X Server configuration settings that are recommended. The first MaximizeWindow forces any window opened to be full screen. This feature was tested, but seemed to only occasionally operate correctly. The last setting shown below, HideMouseCursor causes the X mouse curser to disappear.

  <XConfig
    MaximizeWindow   = "1"
    HideMouseCursor  = "1"
  />

Synchronization Configuration

In order to correctly configure the syncronization of the DVG cluster you must specify three things, SyncronizeDelay, SynchronizeOn, and a list of render nodes in your chain. The SyncronizeDelay attribute specifies the number of synchronization points that are initially skipped in order to ensure proper start-up of your application. The default value is 50, but smaller values will also work. The SynchronizeOn specifies which OpenGL command the DvgWrapper will wait for to initiate each synchronization barrier.

  <Synchronization>
    <Config SynchronizeDelay = "2" SynchronizeOn = "glXSwapBuffers" />
    <Renderer HostName = "dvg1-a" />
    <Renderer HostName = "dvg1-b" />
    <Renderer HostName = "dvg2-a" />
    <Renderer HostName = "dvg2-b" />
  </Synchronization>

VR Juggler Configuration Files

Configuring your application to work properly on a DVG cluster is identical to any other configuration. There are a few things that you should keep in mind while creating the configuration files though.

DisplayWindows will only be visible at the end of the DVG composite chain if they are opened on the proper section of the X Server and are of the correct size. For example lets assume that you have a single monitor attached to the last node in your DVG composite chain of four render nodes. Lets also assume that your final resolution is 1280x1024 and you want to split the image into four quadrants:

+---------------------+
|          |          |
|  Node 1  |  Node 2  |
|          |          |
+----------+----------+
|          |          |
|  Node 3  |  Node 4  |
|          |          |
+---------------------+

Since all nodes are drawing an equal sized section of the final image, on each node you must open a window at the origin with the proper size.

  • Origin: (0,0)
  • Size: (640, 512)

Important Environment Variables

In order for the DvgWrapper to know which X server to run your application you must set the DISPLAY environment variable to :0 on each machine before running your application as shown below.

   setenv DISPLAY :0
   ./runDvgGL myApp cluster.jconf

In order to see debug information from the DvgWrapper you can set the EB_MSG_LEVEL environment variable to one of the following settings.

  • warning - Only display warnings and errors.
  • info - Show a more verbose level of debug output.

The last environment variable discussed, DVG_NO_NOISE, disables the PC speaker that makes noises while initializing the DVG composite chain.

-- AronBierbaum - 09 Dec 2003



Topic OradDVGCluster . { View | Diffs | r1.7 | > | r1.6 | > | r1.5 | More }
Revision r1.1 - 09 Dec 2003 - 21:50 - AronBierbaum
Revision r1.7 - 11 Oct 2004 - 21:24 - DanielShipton

Copyright © 1999-2008 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding VRJ Wiki? Send feedback