Page 1 of 2 12 LastLast
Results 1 to 10 of 16

Thread: The New Linux OpenGL ABI Is Nearing Reality

  1. #1
    Join Date
    Jan 2007
    Posts
    14,597

    Default The New Linux OpenGL ABI Is Nearing Reality

    Phoronix: The New Linux OpenGL ABI Is Nearing Reality

    One year ago a new Linux OpenGL ABI was proposed to make dealing with Linux OpenGL libraries easier and cleaner, among other benefits. The Linux OpenGL changes that will ultimately affect all Linux graphics drivers is nearing fruition...

    http://www.phoronix.com/vr.php?view=MTQ3MTc

  2. #2
    Join Date
    Sep 2013
    Posts
    5

    Default

    The video (along with other ones) is available here.

  3. #3
    Join Date
    May 2012
    Posts
    781

    Default

    The video presentation can be found here:
    http://www.x.org/videos/XDC2013/

  4. #4
    Join Date
    Sep 2008
    Posts
    264

    Default

    I guess that means that AMD will support that in what...2 years?

    Anyway, does that mean that, if both drivers would work with that ABI, I could run a Nvidia card in combination with an AMD card the same way I can today plug two AMD cards into my PC and connect them (X-fire)?

  5. #5
    Join Date
    May 2012
    Posts
    781

    Default

    Quote Originally Posted by Detructor View Post
    I guess that means that AMD will support that in what...2 years?

    Anyway, does that mean that, if both drivers would work with that ABI, I could run a Nvidia card in combination with an AMD card the same way I can today plug two AMD cards into my PC and connect them (X-fire)?
    Afaik today only one GL implementation can be used at a time, the one which last created the /usr/lib/libGL.so, if you wanna use another implementation you have to run some filesystem utility to remove/overwrite the current GL implementation at /usr/lib/libGL.so (say the nouveau one) with another driver (say Nvidia's proprietary one).

    The new ABI allows many drivers to coexist in peace and the runtime is agnostic of which drivers exist in the OS and chooses which driver to use without any hacks whatsover, e.g. you can have in the same application window a GL context running on nouveau and the other one running on Nvidia's proprietary driver. Not that you need this, it just shows that the infight between GL drivers should be over, plus some provisions for future non-GL based solutions.

    But since it's not final yet, we don't know exactly what it will be.

  6. #6
    Join Date
    Jul 2012
    Posts
    738

    Default

    Does that mean, that SteamOS can just preinstall NVIDIA, Catalyst and intel-dri and some clever code will just detect the hardware and work out-of-the-box with the proper drivers?

  7. #7
    Join Date
    May 2012
    Posts
    781

    Default

    Quote Originally Posted by blackout23 View Post
    Does that mean, that SteamOS can just preinstall NVIDIA, Catalyst and intel-dri and some clever code will just detect the hardware and work out-of-the-box with the proper drivers?
    Yes, the basic idea is you install as many video drivers as you want and the system/program will use the proper one, kind of like the linux modules which you can load and unload at runtime at any time depending on which device is connected or available.
    Last edited by mark45; 09-28-2013 at 01:26 PM.

  8. #8
    Join Date
    Sep 2010
    Posts
    459

    Default

    Hope this gets fixed good.
    Linux really needs a way to deal with the concept of API's in general better than the current mess.
    This system of doing this would be a nice thing to have more universally for all API's.

  9. #9
    Join Date
    Jun 2010
    Location
    ฿ 16LDJ6Hrd1oN3nCoFL7BypHSEYL84ca1JR
    Posts
    1,044

    Default

    Quote Originally Posted by mark45 View Post
    Afaik today only one GL implementation can be used at a time, the one which last created the /usr/lib/libGL.so, if you wanna use another implementation you have to run some filesystem utility to remove/overwrite the current GL implementation at /usr/lib/libGL.so (say the nouveau one) with another driver (say Nvidia's proprietary one).
    No. It's enough to use LD_LIBRARY_PATH=/path/to/libgl
    There's also LIBGL_DRIVERS_PATH. And if all doesn't work, you can still use LD_PRELOAD to load another libgl first.

    But of course it would be much better to have actual support of that instead of just loading different libraries and hoping that nothing collides.

  10. #10
    Join Date
    May 2012
    Posts
    781

    Default

    Quote Originally Posted by ChrisXY View Post
    No. It's enough to use LD_LIBRARY_PATH=/path/to/libgl
    There's also LIBGL_DRIVERS_PATH. And if all doesn't work, you can still use LD_PRELOAD to load another libgl first.

    But of course it would be much better to have actual support of that instead of just loading different libraries and hoping that nothing collides.
    Which is what I'm saying, without crappy workarounds and knowing where stuff is located (since it's not standardized) is a pita and doesn't work at all if you haven't invested a lot of time in figuring a working workaround out. It's like X11 which basically works but is crappy as hell and anyone wants to get rid of it except a few folks that are conservative (read "with down syndrome") who like it.

Posting Permissions

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