I am using ssh -X to display GUI apps locally.
Is there a better way to speedup this processes - something similar what NoMachine Nx server / client does?
Super User is a question and answer site for computer enthusiasts and power users. It only takes a minute to sign up.Sign up to join this community
If you add the -C option to ssh, you'll compress the data prior to encrypting it. Depending on the speed of your connection and, I suppose, on the speed of your CPU, this can make a difference. Back in the old days of dial-up modems, it made a huge difference, and I've seen it make a measurable difference on cable modems running VMWare Workstation from a remote X client. Your mileage may vary.
Why not use NX? I found it pretty easy to set up, and it's much faster than either direct X11 connections or VNC. Plus it has the advantage that you can disconnect and reconnect to the apps later without killing them. It's free for noncommercial use, and not that hard to set up on standard linux OS's.
You don't need to SSH, of course. You can configure your X Server to accept connection via TCP from other remotes to display their apps on your display. Of course this is insecure due to the fact that SSH is not involved, but it would be a bit faster due to the lack of encryption. The amount of data being passed, however, is the real performance killer.
As for alternatives to NoMachine's NX Server, there is FreeNx and NeatX. I use NeatX with NoMachine's client, which works pretty well, even over VPN. These solutions compress the streams improving the performance quite a bit.
I would recommend looking into Xpra. I just started using it and it has been orders of magnitude faster than X11 forwarding even over my Gigabit Ethernet network.