On Mon, Mar 7, 2011 at 08:56, Christian Weiß <christian.weisz@spoc.at> wrote:
Consider an installation of about ~600 low budget thin-clients (with almost no 3D support from the graphics chip) running as X-Terminals. Those thin-client stations are serviced by a host computer for 25-30 stations each. This infrastructure should be the basis of an architectural/interior planning system with serious demands in terms of 3D rendering. It's all clear that the client hardware will not be able to provide the power, so it comes down to a server-based rendering approach.

While your willingness to fund this kind of development is laudable, this sounds rather like an organization doing LTSP and grappling with the widespread proliferation of compositing window managers. If that's the case, you should probably reevaluate the current state of thin client hardware. Four years ago, when I last did this work, thin clients with 512MB of RAM and an 945 Intel graphics chip were widely available for under $300. I'm sure that things have improved. Any modern Intel graphics chipset >965 is more than enough to run a compositor and 512 MB is plenty of RAM for a desktop shell. This is essentially what Dave Richards at City of Largo is doing.

The best way to run things in this configuration is to make the thin clients root from NFS root or run a Live-CD like image on them and then run a script in rc.local which drops your own customized .desktop files in ~/.local/share/applications in the Live user's home directory. These .desktop files Exec= lines are SSH w/ remote X11 forwarding back to your application servers. For example: Exec="ssh $username@libreoffice-server -Y /usr/bin/oowriter".

It does require a little bit of initial scripting and figuring out how to handle user accounts is specific to your environment but it puts all that computing power on the thin clients, including their 3D hardware, to use. When I last did this, I used ~/.local/share/autostart shell script to launch a username and password prompt after the desktop was up to mount directories and make the SSH w/ username links proper.

The other way to go about it is to get thin clients with 2GB of RAM and no harddisk and just boot NFS root and run them as full-blown disk-less workstations. Then all you need is a big file server. And less bandwidth than LTSP requires (which is a huge plus.)