Evaluation questions

Viewing 7 posts - 1 through 7 (of 7 total)
  • Author
    Posts
  • #4721
    Avatarbyrne
    Participant

    Hi,

    I am evaluating Terminal Server and I have a couple of technical questions.

    How effective is the hardware encoding on a Linux Terminal Server? If we use an Nvidia card in our Terminal server how many virtual desktops will benefit from hardware accelerated encoding? I assume there is a limit on the number of simultaneous streams that can be encoded on the card (8?). Is hardware encoding supported for VP8 or is it a h264 feature only? The Terminal Server evaluation lacks h264 support.

    The seamless/rootless mode for running a single application seems to garble quite a lot of the graphics (e.g. the mouse pointer) and the performance of the graphics updates suffers (e.g. playing video) when compared to running the same application in a full desktop. Is this a known limitation? I am running an EL6 server/client.

    Can the options in the !M tray icon be customised? For example if I disable the whiteboard in the node.cfg it still appears in the icon drop down menu (but does nothing). It’s the same for allowing uploads, if disabled it still appears in the icon dropdown. I’d be happy if the icon only gave the option to record the session or “download a file from the server” and nothing more. Can the option to show the menu panel also be completely disabled? We don’t want users to be able to play with settings or try to create new connections.

    I followed https://www.nomachine.com/AR11K00737 but when I try to run something using VGL I get:

    # /usr/NX/scripts/vgl/vglrun glxgears

    No protocol specified

    [VGL] ERROR: Could not open display :0.

    The X server is running on :0 using the nvidia module. Maybe it’s an auth issue? This is on EL6.

    Am I correct in assuming that VGL uses the graphic card in a Terminal Server to draw the GL which is then video encoded in the normal NX way and sent to the client? Could the VGL be sent and drawn on the connecting client instead? All our desktop clients have fast graphics cards so can we u utilise them to improve the display quality/speed? Does hardware decoding (h264) make a big difference to the desktop experience?

    Cheers,

    Daire

     

    #4742
    AvatarTor
    Contributor

    Hi byrne.

    How effective is the hardware encoding on a Linux Terminal Server? If we use an Nvidia card in our Terminal server how many virtual desktops will benefit from hardware accelerated encoding? I assume there is a limit on the number of simultaneous streams that can be encoded on the card (8?). Is hardware encoding supported for VP8 or is it a h264 feature only? The Terminal Server evaluation lacks h264 support.

    We don’t use hardware encoders. We use the hardware only on decoding side.

    The seamless/rootless mode for running a single application seems to garble quite a lot of the graphics (e.g. the mouse pointer) and the performance of the graphics updates suffers (e.g. playing video) when compared to running the same application in a full desktop. Is this a known limitation? I am running an EL6 server/client.

    Full desktop sessions can work either via the NX compression of X protocol (“lightweight” mode) or via H.264/VP8 encoding. Rootless sessions always work through a mix of compressed X protocol and VP8 encoding. This is not a limitation on performance generally, but there could be some difference under specific conditions and with specific applications.

    Can the options in the !M tray icon be customised? For example if I disable the whiteboard in the node.cfg it still appears in the icon drop down menu (but does nothing). It’s the same for allowing uploads, if disabled it still appears in the icon dropdown. I’d be happy if the icon only gave the option to record the session or “download a file from the server” and nothing more.

    In fact those unavailable items should not be visible. We’ve recently noticed the problem, a fix is ready and will be released soon.

    Can the option to show the menu panel also be completely disabled? We don’t want users to be able to play with settings or try to create new connections.

    We’re planning to implement this feature that may help you:

    https://www.nomachine.com/FR05J02679

    It is still not approved because we want to be sure to offer a flexible solution. For example in your case the ‘Disabled’ setting may not be correct because you don’t want to forbid the credential saving but just disable the menu panel.

    [VGL] ERROR: Could not open display :0.
    The X server is running on :0 using the nvidia module. Maybe it’s an auth issue? This is on EL6.

    This is due to a failure connecting to the 3D X server. I suggest running again the vglserver_config script by adding command line options: +s +f +t.

    Am I correct in assuming that VGL uses the graphic card in a Terminal Server to draw the GL which is then video encoded in the normal NX way and sent to the client? Could the VGL be sent and drawn on the connecting client instead? All our desktop clients have fast graphics cards so can we u utilise them to improve the display quality/speed? Does hardware decoding (h264) make a big difference to the desktop experience?

    Our software uses VirtualGL to render OpenGL application in hardware on the server side. We don’t provide a channel forwarding OpenGL calls or GLX requests to the client side.

    #4743
    Avatarbyrne
    Participant

    Okay thanks for the feedback. The knowledge base entry “https://www.nomachine.com/AR02L00782” is not very clear about server side graphics hardware utilisation. I’m not sure what it means by server side hardware acceleration?

    I see that when we specify “lightweight” mode the rootless window seems to draw correctly. Can you select between vp8/h264/lightweight sessions as a client option? We require reasonable video playback across the LAN to clients machines so I suspect that NX compression is not going to as good as h264 for our purposes.

    I managed to get the VGL stuff working by running startx as root so I suspect something isn’t working with gdm/kdm.

    Cheers,

    Daire

    #4754
    Avatarfra81
    Moderator

    Hi byrne.

    Okay thanks for the feedback. The knowledge base entry “https://www.nomachine.com/AR02L00782″ is not very clear about server side graphics hardware utilisation. I’m not sure what it means by server side hardware acceleration?

    On server side hardware acceleration refers to the possibility of capturing the screen content from the GPU memory directly, without having to use the OS APIs. This is the deafault method on Windows servers. On client side it enables the hardware decoding.

    I see that when we specify “lightweight” mode the rootless window seems to draw correctly. Can you select between vp8/h264/lightweight sessions as a client option? We require reasonable video playback across the LAN to clients machines so I suspect that NX compression is not going to as good as h264 for our purposes.

    That is not available as a client option.

    #4751
    Avatarbyrne
    Participant

    Also with regards to removing configuration options (we don’t want to confuse users and we know best), when using rootless mode to run an application it opens up the connection settings window. We would like to be able to disable this. So the only window that opens when we open a session that starts a web browser is the browser window itself.

    #4759
    Avatargraywolf
    Moderator

    I managed to get the VGL stuff working by running startx as root so I suspect something isn’t working with gdm/kdm.

    We have to update the script in order to handle this. Please try the attached one.

    • This reply was modified 6 years, 7 months ago by Avatargraywolf.
    Attachments:
    #4833
    AvatarBritgirl
    Keymaster

    On the server side the GPU is used to accelerate most operations in the pipeline. These intermediate stages represent a big chunk of the total computing power needed by NoMachine to perform its task, very often as much as the final video encoding itself. We are working on GPU-assisted video encoding but the big variability of drivers and the quality of the various drivers provided by the different GPU vendors has caused us a lot of headaches, so much that we have not been able, yet, to introduce such a feature in the software available for download. Making a server version optimized for a single GPU family (NVidia for example) is certainly simpler and it’s something we are evaluating for the near future.

Viewing 7 posts - 1 through 7 (of 7 total)

This topic was marked as solved, you can't post.