Hello, I answered my own question faster than expected. I have an optimus enabled laptop and run bumblebee to access my nvidia GPU. I successfully ran two accelerated instances of glxspheres through xpra on my local machine. I'll try this over a network with a thin client tomorrow.
As far as patching up the data bouncing back and forth between GPU and CPU for render and NVENC, I think I know someone who would be able to provide sufficient demand for this. Would a donation to the project cause this issue to get fixed? Do you have a rough idea of what it would take? Thanks for the great work, Elliot =================== Exactly what I did is this: on server: >xpra start :100 >xpra start :110 >DISPLAY=:100 optirun glxspheres >DISPLAY=:110 optirun glxgears On client (another terminal on same laptop): >xpra attach :100 on another terminal: >xpra attach :110 glxspheres ran at 80-90 fps instead of 120 with two instances going, but one running through xpra was just as fast as no xpra. On Wed, Dec 11, 2013 at 3:29 PM, ... <[email protected]> wrote: > Antoine, > > Great information. Thank you! > > So, VirtualGL would theoretically work for multiple users per card > (multiple applications on multiple displays)? > > My intention is to be serving modern video games, like Minecraft, League > of Legends, etc. I guess I would have to look into if openGL acceleration > is all that is needed. > > I look forward to trying out the virtualGL with my simple setup, and > working towards getting having a need for NVENC. > > -Elliot > > > > > On Tue, Dec 10, 2013 at 10:33 PM, Antoine Martin <[email protected]>wrote: > >> On 11/12/13 06:18, ... wrote: >> > Hello, >> > >> > I had some questions about NVENC. Sorry if this information is >> somewhere >> > already and I didn't find it. >> I assume you've already read: >> http://xpra.org/trac/wiki/Encodings/nvenc >> > Can xpra use a kepler enabled nvidia card to both render graphics >> (hardware >> > accelerated) and h264 encode them before shipping them off to another >> > display across the network? >> According to Nvidia: >> >> https://developer.nvidia.com/sites/default/files/akamai/cuda/files/CUDADownloads/NVENC_AppNote.pdf >> "NVIDIA's latest generation of GPUs based on the Kepler architecture, >> contain a >> hardware-based H.264 video encoder (henceforth referred to as NVENC). " >> So, assuming that this is a pro card or that you found a license key >> (...), yes you can use NVENC with such cards. >> This answers the second half your question. >> >> >> As for the "render graphics hardware accelerated", it is a little bit >> more complicated. Based on your description, I assume that the card is >> not connected to a monitor or that this monitor will not be used for >> viewing. If that's not the case, the answers below are going to be >> inadequate. >> >> First, you need to define "accelerated": >> * if you mean OpenGL acceleration - which is often enough, then this >> will do what you want and is supported: >> http://www.virtualgl.org/ >> * if you want to use the regular "nvidia" X11 driver for acceleration >> directly, there are ways to use a regular X11 server (usually running as >> root) to replace xpra's Xvfb, you may need to use the " >> ConnectedMonitor" option if no monitor is attached to the card. This >> will only work for a single user per card and your mileage may vary: it >> "should" work. >> Using "xpra shadow" to copy an existing display is not a good solution >> at present as it uses polling and will use far too much CPU time - >> though that could be fixed. >> >> The main downside of the current xpra 0.11 code is that it is not really >> tailored for this Nvidia specific use-case: during screen updates the >> pixel data will be downloaded from the GPU to the CPU and then uploaded >> again to the GPU for compression... which is a complete waste of >> valuable memory bandwidth. It shouldn't be too hard to bypass this >> unnecessary copying, and if there is enough demand for it then we can >> certainly look at it. >> > If not, is this something that some other VNC like program can do? >> Not as far as I know: xpra is the first, and at present the only >> open-source software to have NVENC support. >> > If so, >> > are there any other hardware requirements or issues that I should know >> > about? Would any kepler/NVENC enabled nvidia card be able to do this? >> As per above, with consumer cards (GeForce) you will need to find a >> license key... >> >> I do wonder if some consumer protection law could force Nvidia to >> provide the keys required to take advantage of the features they >> advertised when the cards were sold (and earlier SDKs did not require >> license keys either). >> As can be seen here in the GTX680 whitepaper: >> >> http://www.geforce.com/Active/en_US/en_US/pdf/GeForce-GTX-680-Whitepaper-FINAL.pdf >> "All Kepler GPUs also incorporate a new hardware-based H.264 video >> encoder, NVENC. " >> > Does anyone have any experience with this? >> >> Cheers >> Antoine >> _______________________________________________ >> shifter-users mailing list >> [email protected] >> http://lists.devloop.org.uk/mailman/listinfo/shifter-users >> > > _______________________________________________ shifter-users mailing list [email protected] http://lists.devloop.org.uk/mailman/listinfo/shifter-users
