[Paraview] How to connect to X Server automatically when doingcatalyst live data visualization.

Burlen Loring bloring at lbl.gov
Tue Oct 8 12:24:52 EDT 2013


Maojin,

when a catalyst/pvserver jobs starts just be fore launching 
catalyst/pvserver you need to start up x. This can be done 
non-interactively from a shell script. I'm pasting an example.

hope this helps
Burlen


#PBS -j eo
echo "Starting ParaView..."
echo "MPI_TYPE_MAX=$MPI_TYPE_MAX"
echo "LD_LIBRARY_PATH=$LD_LIBRARY_PATH"
echo "PATH=$PATH"
echo "PV_PATH=$PV_PATH"
echo "PV_NCPUS=$PV_NCPUS"
echo "PV_LOGIN_PORT=$PV_LOGIN_PORT"
echo "PV_LOGIN_HOST=$PV_LOGIN_HOST"
echo "PBS_DISPLAYS=$PBS_DISPLAYS"
echo "*PBS_DISPLAYS="`cat $PBS_DISPLAYS`
# remove this test once login nodes are online.
if [ "$PV_LOGIN_HOST" = "nautilus" ]
then
     PV_LOGIN_HOST=localhost
     echo "Using localhost on nautilus."
fi
cd $PV_PATH
pwd
# construct an array of the displays assigned us
NDISPLAYS=`cat $PBS_DISPLAYS | wc -l`
i=0
for d in `cat $PBS_DISPLAYS`
do
     # note: colon is not allowed in mpirun command line
     mptd=`echo $d | cut -d: -f2`
     MPT_DISPLAYS[i]=$mptd
     # start an x server for each display
     xinit /bin/sleep 30d -- $d -layout $d -once -terminate -ac &
     X_SERVERS[i]=$!
     let i=i+1
done
echo "MPT_DISPLAYS=$MPT_DISPLAYS"
echo "X_SERVERS=$X_SERVERS"
sleep 30s
DISPLAY=":${MPT_DISPLAYS[0]}" xrandr
# construct the command line with displays assigned to
# processes round-robin
let PV_MAX_CPU=$PV_NCPUS-1
for p in `seq 0 $PV_MAX_CPU`
do
     did=`expr $p % $NDISPLAYS`;
     if [ -n "$cmd" ]
     then
         cmd=$cmd" : "
     fi
     cmd=$cmd"1 $PV_PATH/bin/pvserver 
--x11_display_spec=${MPT_DISPLAYS[$did]} --reverse-connection 
--server-port=$PV_LOGIN_PORT --client-host=$PV_LOGIN_HOST"
done
# run paraview
echo "cmd=$cmd"
mpirun $cmd
# cleanup the x servers
let MAX_DISPLAY=$NDISPLAYS-1
for i in `seq 0 $MAX_DISPLAY`
do
     x_serv=${X_SERVERS[i]}
     kill $x_serv
     echo "killed $x_serv"
done




On 10/08/2013 02:40 AM, 谢茂金 wrote:
> Hi All,
>
> I'm annoying by a Paraview catalyst problem. When doing parallel live 
> data insitu visualization in client-server mode, I have to manually 
> login to all desktops of all server nodes first, else it'll complain 
> that "cannot connect to X Server"
>
> **
>
> As our simulation cluster equips with two CUDA enable GPU cards in 
> each node, how should I configure it to make Paraview take use of GPU 
> acceleration function while don't need to login to desktops each time 
> I decide to launch a parallel visualization task?
>
> I have some fundamental knowledge about parallel visualization with 
> OpenGL and Cg/GLSL under Linux cluster, that's I have to configure 
> XDisplay under /etc/X11/xorg.conf and call XOpenDisplay() in my code 
> to make GPU acceleration available. Does this similar to paraview or 
> help to understand the Paraview's style?
>
> BTW, is there a way to make the visualization nodes available to 
> multiple end users? Currently, if one login to the node’s desktop, 
> others cannot login to the nodes’ desktop again.
>
> My environment is a GPU cluster, CentOS and Paraview 4.0.0
>
> Thank you.
>
> ------------------------------------------------------------------------
> Maojin XIE
>
>
>
>
>
> _______________________________________________
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html
>
> Please keep messages on-topic and check the ParaView Wiki at: http://paraview.org/Wiki/ParaView
>
> Follow this link to subscribe/unsubscribe:
> http://www.paraview.org/mailman/listinfo/paraview

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.paraview.org/pipermail/paraview/attachments/20131008/90e791f1/attachment.htm>


More information about the ParaView mailing list