Linux distribution with OpenGL GPU support?

Discussion in 'Linux Virtual Machine' started by erwincoumans, Sep 2, 2009.

  1. erwincoumans

    erwincoumans Bit poster

    Messages:
    3
    Does Parallels 4.x for Mac support hardware OpenGL 3D acceleration for any Linux distribution?

    If so, which distro and GPU are supported?

    Thanks,
    Erwin

    By the way: are there any plans to support virtualized OpenCL CPU and/or GPU under Parallels?
     
  2. Kevin C. Krinke

    Kevin C. Krinke Junior Member

    Messages:
    12
    As far as I know, there is no support for any form of direct rendering opengl for any Linux distribution.

    I am personally very hopeful that some day in the future that there will be support for even just OpenGL 2.0 directly in Linux. It really boggles my mind why it's lacking when in theory it shouldn't be so difficult as compared to their Windows graphic support.

    Would love to hear from any Parallels staff regarding two specific questions:

    1. Will we ever have a Parallels video driver (of any sort) that supports OpenGL / DRI?

    and if that's even a vaguely remote "yes"...

    2. Given the fact that this OpenGL support is my single worst problem with Parallels and Linux guests... When I will be able to say that Parallels has given me my dream work environment?
     
  3. Ed Sutton

    Ed Sutton Member

    Messages:
    52
    VMGL - OpenGL hardware acceleration

    I too need Linux guest OpenGL hardware acceleration. I do OpenGL software development using a Red Hat Enterprise Linux 5.2 guest VM. To be able to work under Parallels, I must modify my software to throttle down about 10x in order to allow the Mesa 3D OpenGL software rendering to be able to keep up.

    There is a solution for OpenGL hardware acceleration if I switch to either Xen or VMware. It is a solution I have not tried. See:
    VMGL (formerly Xen-GL)
    http://www.cs.toronto.edu/~andreslc/xen-gl/

    Implementing built-in OpenGL support in Parallels for Linux guests would give it a lead over VMware Fusion which still does not have built-in support even in the latest October 2009 VMeare Fusion 3.0 release.

    Any suggestions are greatly appreciated,

    -Ed
     
  4. Kevin C. Krinke

    Kevin C. Krinke Junior Member

    Messages:
    12
    Ignoring the complexity of setting any VMGL solution up, the actual OpenGL support provided with VMGL is "roughly" 1.5 with a slew of caveats...

    For my needs (making a game) I need an absolute minimum of 2.0 support in a number of areas and of particularly great importance is having a reliable GL_COMPILE_AND_EXECUTE mode as well as functional pbuffers.

    I couldn't really care too much about performance within the guest, however, with Parallels' support for OpenGL in Windows totally making my dev life a dream due to the awesome performance I'm seeing... I feel kinda spoiled and now I expect my Linux guest to have the same... native support for at least OpenGL 2.0

    I'm still baffled as to why there isn't OpenGL support at all in a Linux guest. Given the monumental job done for Windows you'd think an open platform like Linux would be an easy dev target. Of course, I know nothing of how difficult in reality it could possibly be for the Parallels devs to work out the support but you've got to admit that on the surface level of things it seems that it should be rather straight forward to make a driver...
     
  5. Ed Sutton

    Ed Sutton Member

    Messages:
    52
    I too would dearly love to see OpenGL hardware acceleration support added to Parallels Tools for Linux guests.

    If you can live with very poor performance, the Mesa 3D Graphics Library supports OpenGL 2.x using a software-only rendering driver.

    http://www.mesa3d.org/

    I pasted my personal notes for using it under RHEL 5.x below.

    -Ed

    The Mesa 3D Graphics Library

    Mesa is an open-source implementation of the OpenGL specification - a system for rendering interactive 3D graphics. A variety of device drivers allows Mesa to be used in many different environments ranging from software emulation to complete hardware acceleration for modern GPUs.

    The major virtual machine software vendors such as Parallels, VMware, and VirtualBox typically provide a working hardware acceleration implementation only for VM's guests running the mainstream Windows operating systems. If you are developing under RHEL, then no GPU for you.

    Mesa 7.4.3 works well for providing good OpenGL software compatibility for a RHEL virtual machine. Note this means software emulation rather than hardware. This can be an acceptable solution for OpenGL code development if you can live with reduced frame rates for your development.

    1. Download the MesaLib tarball from http://www.mesa3d.org/
    2. #make linux-x86 makes a software rendering driver (no hardware acceleration)
    3. make linux-x86
    4. sudo make install

    Which installs libs to:
    /usr/local/lib

    And installs includes to:
    /usr/local/include/GL
     
  6. Ed Sutton

    Ed Sutton Member

    Messages:
    52
    Parallels 5.x OpenGL 2.x performance twice as fast software rendering

    After purchasing the download version of the Parallels 5.x upgrade, my OpenGL performance has improved by about 2x compared to software rendering. Previously, using the Mesa 3D OpenGL software rendering driver I could decode and render about 10 fps of NTSC video. I can now do 20 fps. I was expecting more like 10x or better assuming the Parallels Red Hat Linux driver would pass the OpenGL calls on to the host GPU hardware. I am not sure it is doing that. My guess is that it is implemented as a software rendering OpenGL driver rather than passing OpenGL calls directly to the host GPU. In summary, OpenGL performance is better but not great.

    I fumbled around installing the new Parallels Tools. The second time I removed first, reboot, then installed again and it seems to work fine. I am still playing around with VM configuration of CPUs=2 to see if this works better in Parallels 5.x.


    In 5.x, the cut & paste from Linux guest to OS X host works well.

    -Ed
     
  7. Joshua D Franklin

    Joshua D Franklin Bit poster

    Messages:
    3
    Thanks for posting the info--as far as I can tell this is the only post about someone actually using the Parallels Desktop 5 support for OpenGL on Linux. Sounds like you're running Red Hat EL5 which I am also planning to do. We're running scientific applications that don't actually need much performance, but won't work at all without 3d.
     
  8. Ed Sutton

    Ed Sutton Member

    Messages:
    52
    If you need OpenGL *and* do not care about performance, you should be fine on RHEL 5.x once you install the Parallel Tools.

    -Ed
     
  9. Kevin C. Krinke

    Kevin C. Krinke Junior Member

    Messages:
    12
    You're welcome...

    I'm actually running Ubuntu 8.10.

    I can get OpenGL running in Linux using Parallels 5 however the problem I'm now facing is with compiling / linking applications that use OpenGL. Apparently there's a disconnect between libGL (provided by Parallels tools) and libGLU (provided by Ubuntu via Mesa) which is utterly preventing me from being able to do anything constructive at this time.

    If you're just running applications that require 3D, there's a good chance it'll work in Linux with Parallels 5, particularly if performance isn't a big deal. If performance is important, I can only say that running glxgears gives me < 500 fps (avg 200) which is pretty horrible considering that a native Linux install on this machine runs in the 5k fps range.

    I hope this helps!
     
  10. Joshua D Franklin

    Joshua D Franklin Bit poster

    Messages:
    3
    trouble

    Unfortunately I'm having trouble getting it to work. I installed a fully updated 32-bit RHEL5 VM (kernel 2.6.18-164.10.1.el5, xorg 7.1.1) on a fully updated Parallels Desktop 5 (tools version 5.0.9310.546799).

    I installed with mnt/install --install-unattended-with-deps and it went fine. Everything looks fine in
    /var/log/parallels-tools-install.log

    However, glxinfo says:
    name of display: :0.0
    Segmentation fault

    strace shows it crashing right after writing the display output.

    prlcc does something but no GUI comes up. Is it supposed to?

    For those of you that have this working, what el5 kernel and tools versions are you using?

    The only thing I can think of is that I'm testing this on a MacBook with a GMA X3100. Does that matter?
     
  11. Joshua D Franklin

    Joshua D Franklin Bit poster

    Messages:
    3
    update

    I see that the same fully updated Parallels Desktop 5 (tools version 5.0.9310.546799) does let me run glxgears in non-updated Fedora 11 install that I had sitting around. So my guess is that there is a problem with the latest el5 updates (xorg or kernel).
     

Share This Page