[Paraview] PV & multiple video cards
Moreland, Kenneth
kmorel at sandia.gov
Tue Jun 22 16:16:48 EDT 2010
I think this is a good suggestion. I don't think the fact that it relies on processes being assigned in a particular order is a big deal. The default allocation is usually to place contiguous ranks in the same node anyway. The tiled display options also have heavy reliance on the order in which processes are assigned, and I don't recall complaints about that.
The only change I would suggest is to not have an option named --number-of-gpu-per-host change the display parameter. The option name should reflect the fact that it is going to override the display environment variable. Offhand, I cannot think of a single option name that reflects both the fact that you are changing the display and providing the number of screen ids to use. Perhaps you would have two options, the --number-of-gpu-per-host as you described and a something like --set-display-server-id-by-process-id. Since one does not make sense without the other, you could give an error if one is used independently.
-Ken
On 6/22/10 12:31 PM, "burlen" <burlen.loring at gmail.com> wrote:
Hi,
I realized that my suggestion relies on processes being assigned in a
particular order. So something slightly more complicated would need to
be done to determine the number of processes running on each host. Still
it would be pretty simple way to make folks lives easier. Let me know
what you think.
Burlen
burlen wrote:
> Hi,
>
> currently we suggest users rely on details particular to specific MPI
> implementations
> (http://paraview.org/Wiki/Setting_up_a_ParaView_Server#Multiple_GPUs_Per_Node)
> to set up PV server on clusters with multiple graphics cards per node.
> It seems to me that this reliance on non standard implementation
> details isn't necessary for the most common case and it can introduce
> some complication to get PV running on various installations.
>
> There is something simple that we could do to make users life easier.
> ParaView could handle a common configuration of multiple graphics
> cards seamlessly with very little effort via an additional command
> line option.
>
> Two common ways to address multiple video devices in X11 via the
> DISPLAY variable are, 1) by server id (":[server].0") or 2) by screen
> id (":0.[screen]"). It depends on how X11 is setup, but I think the
> latter is the most common.
>
> If the user were to tell PV how many video devices are available on
> each node via the following command line variable, PV could assign
> rendering contexts cyclically across the available devices by setting
> the DISPLAY variable for the user.
>
> --number-of-gpu-per-host=N
>
> as each server starts he will make the computation to set the DISPLAY
> variable so that render contexts are cycled across the available devices.
>
> For example, something like the folowing could be added to
> Filters/vtkPVMain.cxx
>
> if (numGpuPerHost)
> {
> int screenId=LocalProcId%numGpuPerHost
> setenv("DISPALY=:0.%i",screenId)
> }
>
> This would conflict with the "-display" option, if both are present PV
> would exit and print some error message.
>
> Do you guys think this would be a reasonable approach to handle a
> common use case?
> Burlen
>
_______________________________________________
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
**** Kenneth Moreland
*** Sandia National Laboratories
***********
*** *** *** email: kmorel at sandia.gov
** *** ** phone: (505) 844-8919
*** web: http://www.cs.unm.edu/~kmorel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.paraview.org/pipermail/paraview/attachments/20100622/70274b34/attachment-0001.htm>
More information about the ParaView
mailing list