ParaView/Users Guide/CAVE Display: Difference between revisions

From KitwarePublic
Jump to navigationJump to search
(first time)
 
(copying some material about pvx files)
Line 1: Line 1:
lets see what this does....
When running pvserver/pvdataserver or pvrenderserver on a cluster, users may want to configure some environment variables eg. DISPLAY in case of multi-headed nodes for the processes. This can be done using the PVX configuration XML file.
 
==Where to specify this?==
* pvx file can be specified as the last command line argument for any of the server processes.
* Typically the pvx file is specified for all the executables whose environment is being changed using the pvx file. In case of data-server/render-server configuration, if you are setting up the environment for the two processes groups, then the pvx file must be passed as a command line option to both the executables: pvdataserver and pvrenderserver.
* When running in parallel the file is read on all nodes, hence must be present on all nodes.
 
==Structure==
 
<source lang="xml">
<?xml version="1.0" ?>
<pvx>
  <Process Type="server|dataserver|renderserver">
    <!--
      The only supported Type values are "server", "dataserver" or "renderserver".
      This controls which executable this configuration is applicable to.
      There can be multiple <Process /> elements in the same pvx file.
      ------------------------------------------------------
      |  Executable    | Applicable Process Type          |
      |  pvserver      | server, dataserver, renderserver |
      |  pvrenderserver | server, renderserver            |
      |  pvdataserver  | server, dataserver              |
      ------------------------------------------------------
    -->
    <Machine name="hostname"
            Environment="DISPLAY=m1:0"
            LowerLeft="-1.0 -1.0 -1.0"
            LowerRight="1.0 -1.0 -1.0"
            UpperLeft="-1.0  1.0 -1.0">
      <!--
        There can be multiple <Machine> elements in a <Process> element,
        each one identifying the configuration for a process.
        All attributes are optional.
        name="hostname"
        Environment: the environment for the process.
        LowerLeft|LowerRight|UpperLeft : CAVE configuration parameters applicable
                                          for versions 3.8 or latter only.
      -->
    </Machine>
  </Process>
</pvx>
</source>
* Only 2 vectors ([LowerRight - LowerLef] and [UpperLeft - LowerLeft]) are needed, the third vector is computed from these 2.
 
== Cave Rendering ==
===Instructions===
* Turn on <code>PARAVIEW_USE_MPI</code> and <code>PARAVIEW_USE_ICE_T</code>
* run the servers using the pvx file: <code>mpiexec -np 2 pvserver cave.pvx</code>
* start and connect a client
=== Notes ===
* See below for an example of a cave configuration file
<source lang="xml">
<?xml version="1.0" ?>
<pvx>
<Process Type="client" />
<Process Type="server">
  <!-- 2 render windows will be created on the machine Erna:
      the first rendering has a camera looking forward,
      the second rendering has a camera looking backward -->
  <Machine Name="Erna"
          Environment="DISPLAY=:0"
          <!-- Camera looks forward:
                dx = 2, dy = 2, dz = -2
                Z = -2 defines the view angle  -->
          LowerLeft="-1 -1 -2"
          LowerRight="1 -1 -2"
          UpperLeft="-1  1 -2" />
  <Machine Name="Erna"
          Environment="DISPLAY=:0"
          <!-- Camera looks backward:
                dx = -2, dy = 2, dz = 2
                Z = 2 defines the distance from the camera to the view plane  -->
          LowerLeft="1 -1 2"
          LowerRight="-1 -1 2"
          UpperLeft="1  1 2" />
  </Process>
</pvx>
</source>
* See vtkCaveRenderManager::ComputeCamera for more information on how the coordinates are used to configure the cameras
* The rendering on the server is full screen by default. If you want the windows to be smaller for debugging, set the environment variable PV_ICET_WINDOW_BORDERS=1 on the client machine.

Revision as of 14:34, 16 February 2011

When running pvserver/pvdataserver or pvrenderserver on a cluster, users may want to configure some environment variables eg. DISPLAY in case of multi-headed nodes for the processes. This can be done using the PVX configuration XML file.

Where to specify this?

  • pvx file can be specified as the last command line argument for any of the server processes.
  • Typically the pvx file is specified for all the executables whose environment is being changed using the pvx file. In case of data-server/render-server configuration, if you are setting up the environment for the two processes groups, then the pvx file must be passed as a command line option to both the executables: pvdataserver and pvrenderserver.
  • When running in parallel the file is read on all nodes, hence must be present on all nodes.

Structure

<source lang="xml"> <?xml version="1.0" ?> <pvx>

 <Process Type="server|dataserver|renderserver">
   <Machine name="hostname"
            Environment="DISPLAY=m1:0"
            LowerLeft="-1.0 -1.0 -1.0"
            LowerRight="1.0 -1.0 -1.0"
            UpperLeft="-1.0  1.0 -1.0">
   </Machine>
 </Process>

</pvx> </source>

  • Only 2 vectors ([LowerRight - LowerLef] and [UpperLeft - LowerLeft]) are needed, the third vector is computed from these 2.

Cave Rendering

Instructions

  • Turn on PARAVIEW_USE_MPI and PARAVIEW_USE_ICE_T
  • run the servers using the pvx file: mpiexec -np 2 pvserver cave.pvx
  • start and connect a client

Notes

  • See below for an example of a cave configuration file

<source lang="xml"> <?xml version="1.0" ?> <pvx>

<Process Type="client" />
<Process Type="server">
 <Machine Name="Erna"
          Environment="DISPLAY=:0"
          LowerLeft="-1 -1 -2"
          LowerRight="1 -1 -2"
          UpperLeft="-1  1 -2" />
 <Machine Name="Erna"
          Environment="DISPLAY=:0"
          LowerLeft="1 -1 2"
          LowerRight="-1 -1 2"
          UpperLeft="1  1 2" />
 </Process>

</pvx> </source>

  • See vtkCaveRenderManager::ComputeCamera for more information on how the coordinates are used to configure the cameras
  • The rendering on the server is full screen by default. If you want the windows to be smaller for debugging, set the environment variable PV_ICET_WINDOW_BORDERS=1 on the client machine.