How can I run an OpenGL application installed on a linux machine from my windows machine?

17,073

Solution 1

Solution

I installed two pieces of software:

PuTTY

XMing-mesa The mesa part is important.

PuTTY configuration

Connection->Seconds Between Keepalives: 30
Connection->Enable TCP Keepalives: Yes

Connection->SSH->X11->Enable X11 forwarding: Yes
Connection->SSH->X11->X display location: localhost:0:0

Lauching

Run Xming which will put simply start a process and put an icon in your system tray. Launch putty, pointing to your linux box, with the above configuration. Run program

Hopefully, Success!

Solution 2

If you want the OpenGL rendering to be performed on your local machine, using a Windows X server, like Xming is a good solution. However, if you want rendering to be done on the remote end with just images sent to the local machine, you want a specialized VNC system that can handle remote OpenGL rendering, like VirtualGL.

Solution 3

You could also use VNC ( like cross platform remote desktop ) X is more efficent since it only sends draw commands rather than pixels, but if you are using opengl it is likely that most of the data is a rendered image anyway.

Another big advantage of VNC is that you can start the program locally on the server and then connect to it with VNC, drop the connection, reconnect from another machine etc without disturbing the main running program.

Share:
17,073
scubabbl
Author by

scubabbl

Software Developer in Tokyo

Updated on June 09, 2022

Comments

  • scubabbl
    scubabbl almost 2 years

    In the spirit of being helpful, this is a problem I had and solved, so I will answer the question here.

    Problem

    I have:

    An application that has to be installed on on Redhat or SuSE enterprise.

    It has huge system requirements and requires OpenGL.

    It is part of a suite of tools that need to operate together on one machine.

    This application is used for a time intensive task in terms of man hours.

    I don't want to sit in the server room working on this application.

    So, the question came up... how do I run this application from a remote windows machine?

    I'll outline my solution. Feel free to comment on alternatives. This solution should work for simpler environments as well. My case is somewhat extreme.

  • scubabbl
    scubabbl over 15 years
    I tried VNC, what all I got in the actual OpenGL window was a checkerboard pattern.
  • Martin Beckett
    Martin Beckett over 15 years
    Sounds like the opengl is using hardware features of the graphics card. There are enhanced VNC implementations for windows that hook the graphics driver.
  • timday
    timday over 15 years
    No the problem there that the VNC on the server doesn't support OpenGL; all the windows machine sees with any VNC is a bitmap. (I have yet to see a X11 VNC server which supports GLX).
  • Paul Fisher
    Paul Fisher over 15 years
    I've never found the Keepalive setting necessary — this might be specific to some overly protective firewall you're running.
  • RonenKi
    RonenKi almost 9 years
    This is a very useful method, but I found that for it ti work I needed to set "Connection->SSH->X11->X display location: localhost:0", and not localhost:0:0 as posted