Defining Seats

Chris Tyler chris at tylers.info
Wed Jul 18 19:22:14 PDT 2007


On Thu, 2007-07-19 at 02:03 +0300, Daniel Stone wrote:
> On Wed, Jul 18, 2007 at 03:44:19PM -0400, ext Chris Tyler wrote:
> > There is a lot of interest in doing multiseat on multiple-output video cards:
> > - low-end solutions - one card for economy
> > - laptops - internal and external monitors as separate seats
> > - high-density multiseat - 2-4 outputs per card, 5-7 cards per system
> > 
> > Right now this is usually done with Xephyr, Xnest, or perhaps Xgl (?) on
> > top of a multi-screen base server; eventually we'll need better ways of
> > doing this.
> > 
> > It would a shame to completely preclude the possibility of a
> > multiseat-on-one-GPU configuration (or make it hard to configure).
> > Imagine the win if you could add multiseat capability to a system just
> > by plugging a monitor into a secondary video output and adding a USB
> > keyboard and mouse.
> 
> Well, given the extremely limited resources, and huge complexity of all
> this (you need to have two _completely_ separate X servers in terms of
> how they interface with clients, but somehow have them completely share
> the card and its resources -- this amounts to something very close to a
> server rewrite), it's just not even remotely high on the todo list.

Plenty of people do this right now using the current Xorg and Xephyr
servers. Despite the extra overhead of going through two servers for
every drawing operation, modern GPUs are fast enough that it works well
for almost every 2D workload.


> You need a manual way of configuring it, yes.

I've been thinking about this more. If you could define both a primary
server and a secondary server, then GDM could easily manage
multiseat/single-GPU scenarios:

- Start one primary X server per graphics card/GPU (Xorg)
- Start one secondary X server per seat (Xephyr)

Hot-plugging an additional monitor into an existing graphics card would
be fairly straightforward: add the monitor to the primary server using
xrandr, then start an additional secondary server for the new seat. The
only hard part is figuring out which keyboard and mouse go with each
seat, but you have that problem with any multiseat configuration.

--
Chris Tyler



More information about the hal mailing list