Phoronix: Mesa Support For GPU Offloading With GLX DRI3, EGL Wayland
Axel Davy has posted a new set of 11 patches to allow for GPU offloading by Mesa 3D drivers with GLX DRI3 and EGL Wayland...
Frankly, multiple-gpu systems are really only interesting in the possibility of using the second gpu for something unrelated to graphics. Or at least not *directly* related to graphics.
If they would at least make a direct physical connection from one gpu's buffer space to the other's, so it would have zero performance loss...
Anyway, on my laptop I'm not sure I don't like it: The intel gpu is really optimized for low power consumption, my HD 7970M not so much. And most often I do only use the intel gpu...
Also, VRAM. Intel is handling all the window managing and compositing. It's not much, but with compositing and a lot of windows, it still needs memory. I think it does hold quite a bit in VRAM, doesn't it? Anyway, when playing the game, really 100% of the radeon GPU's ressources can go to rendering the game, which would be nice if moving buffers and synchronization would cost nothing.
Both cards share buffers in an area of ram both can access.
You have to go through the pci express bus to transfer from the hd7970m and its VRAM to the RAM.
Think it like that:
if the intel card was reading directly into hd 7970m buffer, it would have to read using the pci express bus.
It's equivalent to copy via the pci-express bus the buffer in VRAM to a buffer in RAM.
Except you can read two times from the buffer in RAM without going through the pci-express bus again.
So what we call a copy (usually bad) is here better.
What I meant was that I would have liked it IF when designing these laptops with hybrid gpus they would have created a completely new direct connection from the intel gpu to the radeon vram and then as a layman I would imagine it would just be a driver thing to tell the intel gpu how big the buffer is and when to read out and display what "magically" appeared in the buffer. Not so flexible, but really 99,9% of what most people would want to do and none of this complicated stuff. And why can't the gpu manufacturers that intend to put their two gpus together in one machine just talk to each other so that intel maybe could just implement radeon's tiling format? Are they intentionally making it harder for their driver developers?
Anyway, I read the mailing list post now.
I always wondered whether it was possible to "detach" a ddx from Xorg after adding it with setprovideroffloadsink because it will always block you from unloading the kernel module without restarting X.There is no need to have a DDX loaded for the device we want to use,
Now it sounds like it has the nice effect that you can just rmmod radeon whenever nothing is rendering.
And this way you can easily switch between fglrx+bumblebee (by using LD_PRELOAD, LD_LIBRARY_PATH, LIBGL_DRIVERS_PATH and Xorg's -config and -configdir etc. in a slightly hacky way) and radeon. (Of course only when unloading and loading the different modules repeatedly works reliably)
So I assume this bug won't be an issue then either? https://bugs.freedesktop.org/show_bug.cgi?id=69101There is no need to be in a composited environment.
Nice. This is great.