Page 3 of 3 FirstFirst 123
Results 21 to 30 of 30

Thread: A New Linux OpenGL ABI Is Being Proposed

  1. #21
    Join Date
    Aug 2012
    Posts
    8

    Default

    Quote Originally Posted by energyman View Post
    As far as I understand the mailing list message you are wrong. The proposal talks about different libgl's in the file system. Not running simultaniously.

    Gentoo already offers exactly that.
    As far as I understand it, it can dispatch GL commands based on X screen so you can use different OpenGL implementations simultaneously.

  2. #22
    Join Date
    Jan 2009
    Posts
    462

    Default

    Quote Originally Posted by energyman View Post
    As far as I understand the mailing list message you are wrong. The proposal talks about different libgl's in the file system. Not running simultaniously.
    I'm not so certain at the moment, though I'm content to wait for XDC to find out. My only resistance would be if this change were to be implemented specifically to address issues with the Nvidia/AMD/PowerVR blobs with no net-gain for Mesa or other FOSS OGL implementations.

    F

  3. #23
    Join Date
    May 2012
    Posts
    431

    Default

    Quote Originally Posted by elanthis View Post
    These aren't equivalent. GLUT is like a shitty toy version of GTK/Qt. EGL is an OS-neutral version of GLX. GLUT layers over GLX/WGL/AGL/EGL, and offers borderline useless input and timer mechanisms and window management. EGL lets you create and bind GL contexts to a full real windowing system and allows using the native fully featured window system API for input, timers, I/O, events, etc.
    thx, i started learning basic GL with GLUT thinking its all the same

  4. #24
    Join Date
    Nov 2007
    Posts
    1,024

    Default

    Quote Originally Posted by energyman View Post
    As far as I understand the mailing list message you are wrong. The proposal talks about different libgl's in the file system. Not running simultaniously.

    Gentoo already offers exactly that.
    The message very explicitly states that it should/will support loading multiple vendor back ends in the same address space, in clear terms.

    And no, Gentoo does NOT allow even having multiple GL implementations simultaneously, because the very infrastructure of Mesa/libGL on Linux does not allow this, hence this entire proposal. Your client application has no way to select a GL implementation at runtime, and the Gentoo (and most every other Linux distro) facilities for swapping GL implementations do so by ripping out the current libGL and replacing it. It does not allow two apps running at the same time using two different libGLs, which is impossible aside from using separate chroot's or LD_PRELOAD tricks (and even then, only when using separate X instances and so on, because X itself can only have a single libGL loaded).

  5. #25
    Join Date
    Jan 2009
    Posts
    462

    Default

    Quote Originally Posted by elanthis View Post
    The message very explicitly states that it should/will support loading multiple vendor back ends in the same address space, in clear terms.

    And no, Gentoo does NOT allow even having multiple GL implementations simultaneously

    Good answer. The big question that I have is, is this necessary? Are there two OSS GL implementations? If there isn't, then are we not just catering to something that Nvidia desires to facilitate their blobs installation? Does this benefit FOSS GL implementations in any manner, such as being able to run Mesa 8.0 and 9.0 implementations simultaneously, or nouveau and radeon simultaneously, XGL and EGL apps simultaneously?

    To restate, is this an improvement to Linux, an improvement to Nvidia blob-using-customers, or both?

    F

  6. #26
    Join Date
    Jun 2009
    Posts
    1,106

    Default

    Quote Originally Posted by russofris View Post
    Good answer. The big question that I have is, is this necessary? Are there two OSS GL implementations? If there isn't, then are we not just catering to something that Nvidia desires to facilitate their blobs installation? Does this benefit FOSS GL implementations in any manner, such as being able to run Mesa 8.0 and 9.0 implementations simultaneously, or nouveau and radeon simultaneously, XGL and EGL apps simultaneously?

    To restate, is this an improvement to Linux, an improvement to Nvidia blob-using-customers, or both?

    F
    seems both as it will help or make easier stuff like optimus/enduro and will make life easier for blobs users

  7. #27
    Join Date
    Sep 2010
    Posts
    453

    Default

    Didn't know that using an api with hardware is so limited on linux!

    We really need some progress on how drivers can expose api's(including abi's), how libraries are handled.

    And about the file system conflicts. That's why you don't put all the bin of all the user programs in one folder and all the libs of all the user programs in one folder and so on...

    You give each program it's own folder with subdirectories.
    One distribution has done this and seems to have found things can work very well:

    http://www.gobolinux.org/?page=at_a_glance

  8. #28
    Join Date
    Aug 2012
    Posts
    8

    Default

    Quote Originally Posted by russofris View Post
    Good answer. The big question that I have is, is this necessary? Are there two OSS GL implementations? If there isn't, then are we not just catering to something that Nvidia desires to facilitate their blobs installation? Does this benefit FOSS GL implementations in any manner, such as being able to run Mesa 8.0 and 9.0 implementations simultaneously, or nouveau and radeon simultaneously, XGL and EGL apps simultaneously?

    To restate, is this an improvement to Linux, an improvement to Nvidia blob-using-customers, or both?

    F
    The proposal goes beyond dynamically-switchable GL implementations. It includes separating GLX from libGL (hooray!) and providing a clean organization for different GL components (EGL, profiles, etc.). I could imagine a lean Mesa implementation for Wayland that completely cuts out GLX while still providing full Desktop GL support. This is not really possible today with the current ABI for libGL.

    If this also helps NVIDIA to ship a blob that integrates better with the rest of the system, then how is this not a good thing? If anything, this would allow vendors to create hardware-specific, high-performance, open-source GL implementations for their hardware that bypasses Mesa in favor of performance and functionality, and distribute it without having to worry about interfering with system GL libraries. They could expose a GL 4.2 profile without having to first update all of Mesa to be compliant, then implement their driver within the Mesa/Gallium framework. Remember that Mesa is just another OpenGL vendor.

  9. #29
    Join Date
    Sep 2010
    Posts
    453

    Default

    Linux OpenGL ABI
    There is a need to deal with general Linux API ABI's in general. The old system can't do this good enough.

  10. #30
    Join Date
    Jul 2008
    Posts
    1,718

    Default

    Linux (the kernel) has and had stable ABI's and API's for about 20 years - yes as long as its exists.

    Internal structures are neither API's nor ABI's.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •