[Paraview] slow rendering speed

pat marion pat.marion at kitware.com
Thu Sep 11 00:54:36 EDT 2008


Hi Aaron,

Here are some things to try.  Ssh to the cluster and run glxgears.  You
should not see a glxgears window appear on your screen (if you do, it is
using X forwarding).  The command should appear to hang, and you will kill
it with control-c.  If glxgears fails, try different values of DISPLAY until
it works, for example:

export DISPLAY=:0.0

some shells set environment variables like this-

setenv DISPLAY :0.0


Once glxgears works on the main node, try it with mpirun.  Some versions of
mpirun have a command line option -x, this will export a local environment
variable to all the mpi processes:

mpirun -np 4 -x DISPLAY glxgears

or

mpirun -np 4 -x DISPLAY=:0.0 glxgears


If glxgears doesn't work for you, here is a simple debugging program I have
used in the past-

/* main.c */
#include <mpi.h>
#include <stdio.h>
#include <stdlib.h>

int main (int argc, char *argv[])
{
  int rank, size;
  MPI_Init (&argc, &argv);      /* starts MPI */
  MPI_Comm_rank (MPI_COMM_WORLD, &rank);        /* get current process id */
  MPI_Comm_size (MPI_COMM_WORLD, &size);        /* get number of processes
*/
  printf( "I am process %d of %d.  DISPLAY=%s\n", rank, size,
getenv("DISPLAY") );
  MPI_Finalize();
  return 0;
}

Compile it and run it:

$ mpicc -o main main.c
$ mpirun -np 4 ./main
I am process 0 of 4.  DISPLAY=:0.0
I am process 1 of 4.  DISPLAY=:0.0
I am process 2 of 4.  DISPLAY=:0.0
I am process 3 of 4.  DISPLAY=:0.0


Pat


On Wed, Sep 10, 2008 at 5:02 PM, Biao She <shebiao at gmail.com> wrote:

> Hi Ken. Thanks for reply again.I have tried this command, but the error is
> still the same: "DISPLAY is not accessible on the server side".
> In the wiki, there are three things to do with X Connections:
>
>    1. Have xdm run on each cluster node at startup. Although xdm is almost
>    always run at startup on workstation installations, it is not as commonplace
>    to be run on cluster nodes. Talk to your system administrators for help in
>    setting this up.
>    2. Disable all security on the X server. That is, allow any process to
>    open a window on the x server without having to log in. Again, talk to your
>    system administrators for help.
>    3. Make sure each process is run with the DISPLAY environment variable
>    set to localhost:0 (or just :0).
>
> I have talked to system administrator about the first two things. The guy
> said that both are ok on the cluster, but he isn't 100 percent sure about
> the second thing. I try to run the glxgeasr program but it doesn't work. The
> error I got is "couldn't open display '(null)' "
> Could the problem result from the first two configurations? What do you
> think?
>
> Thanks,
>
> Aaron
>
> On Wed, Sep 10, 2008 at 1:37 PM, Moreland, Kenneth <kmorel at sandia.gov>wrote:
>
>> It sounds like you are using the env program wrong.  The env program runs
>> a
>> command, specified on its command line, with a modified environment, but
>> does not modify the environment of the calling program.  To use env, you
>> need to use it within your mpirun command:
>>
>> mpirun -np 4 /usr/bin/env DISPLAY=localhost:0 ./pvserver
>>
>> -Ken
>>
>>
>> On 9/10/08 11:32 AM, "Biao She" <shebiao at gmail.com> wrote:
>>
>> > Thanks your help again, Ken.
>> > You figure out my problem. I indeed connect to localhost:10.0. I am a
>> newbie
>> > of Linux and ssh, I don't know how to connect to localhost:0.0 instead
>> of
>> > 10.0. After I ssh to the cluster, the DISPLAY automatically set to
>> > localhost:10.0. I use "/usr/bin/env DISPLAY=localhost:0" command to set
>> it
>> > back. Then, when I try to connect to the paraview server, I get an error
>> like
>> > this "DISPLAY is not accessible on the server side".
>> > I know that if I start pvserver from the cluster directly, the DISPLAY
>> is
>> > localhost:0, but the cluster doesn't have any keyboard and monitor.
>> > How can I connect to localhost:0 remotely?
>> > Thanks!
>> >
>> > Aaron
>> >
>> >
>> > On Wed, Sep 10, 2008 at 7:09 AM, Moreland, Kenneth <kmorel at sandia.gov>
>> wrote:
>> >> First, let me just say that you should not expect the parallel
>> rendering of
>> >> such a small data set to be faster than just rendering it locally.  The
>> >> parallel rendering has a constant overhead involving the readback of
>> pixels,
>> >> the transfer of data, and the computation of compositing operations.
>> >>
>> >> That said, based on the error it looks like your DISPLAY environment is
>> set
>> >> wrong.  You should be connecting to localhost:0.0, not localhost:10.0.
>>  You
>> >> are probably forwarding all of your rendering commands back to the
>> desktop
>> >> you logged in from though ssh forwarding.  That, of course, will really
>> slow
>> >> things down because all the rendering commands are being shoved through
>> the
>> >> network and all are being processed on a single machine.
>> >>
>> >> Make sure that you are actually rendering to the local GPU.  See the
>> >> ParaView Wiki for more advice.
>> >>
>> >>   http://www.paraview.org/Wiki/Setting_up_a_ParaView_Server
>> >>
>> >> -Ken
>> >>
>> >>
>> >> On 9/9/08 4:24 PM, "Biao She" <shebiao at gmail.com> wrote:
>> >>
>> >>>> Hi there.
>> >>>> I use the client/server mode of paraview to render a small data(about
>> 4M),
>> >>>> >> but
>> >>>> the speed is very slow.
>> >>>> Below is how I do it:
>> >>>> I first ssh to the cluster and start the pvserver by this command:
>> mpirun
>> >>>> >> -np
>> >>>> 4 ./pvserver. The cluster is SGI Altix 4000. The operating system on
>> the
>> >>>> cluster is SUSe linux, 64 bits system.
>> >>>> Then, I launch the paraview client on my local windows computer.
>> After the
>> >>>> client connected to the server, there are two types of errors:
>> >>>> 1. Xlib: extension "XFree86-DRI" missing on display "localhost:10.0"
>> >>>> 2. unaligned access to 0x600000000197a1bc, ip=0x2000000003568e0
>> >>>> Paraview works regardless of these errors, but the problem is that
>> the
>> >>>> rendering speed is way too slow.
>> >>>> I am wondering what could cause the slow down? Maybe the paraview
>> doesn't
>> >>>> >> use
>> >>>> GPU on the clusters at all? How could I tell if the paraveiw use GPU
>> or
>> >>> not?
>> >>>> Or the unaligned access slow down the speed? These errors keep on
>> repeating
>> >>>> whenever I change the viewplane.
>> >>>> I have stalled by this problem for days, any idea would be highly
>> >>> appreciated.
>> >>>>
>> >>>> Thanks!
>> >>>>
>> >>>> Aaron
>> >>>>
>> >>>>
>> >>>>
>> >>
>> >
>>
>>
>
> _______________________________________________
> ParaView mailing list
> ParaView at paraview.org
> http://www.paraview.org/mailman/listinfo/paraview
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.paraview.org/pipermail/paraview/attachments/20080911/eeb3d368/attachment.htm>


More information about the ParaView mailing list