Aha, interesting mesa could have some switch to automatically offload stuff to the CPU... maybe in a separate thread even!
But again complexity hurts you even if it is abstracted.
Here is a talk that shows what happens when you try to multithread graphics:
https://www.gdcvault.com/play/1022186/P ... Dog-Engine
Short version is, because memory is slow you have to push frames back to be able to use more cores to render the same frame.
The result is that on all modern games that do not (1. have super fast cores = PC 2. where developers have prioritized CPU for the playable character only! = Nobody yet, but soon everyone) have multi frame lag, so you press a button and the screen starts drawing that button press MANY frames later, I played The Last Guardian yesterday on PS 4 slim and I just stopped playing, it's UNPLAYABLE. How that technical turd got through to be released is beyond me! Even Shadow of the Colossus on PS2 was better and that was horrible.
Again excuse my french, I'm half french and I don't have time to sugarcoat things for you sensitive britts.
@jamesh Don't worry, as long as the GPU is not forcing me to code stupidly, I will push that thing to the limit. The problem is I have so many RPi 2 that are now basically dead-weights for graphics but that's ok, they serve well as servers.
Edit: I have now filmed and measured the lag in TLG on PS4 and it's almost 1 second! That's 60 frames of lagg, how is that even possible!
https://github.com/tinspin/rupy - A tiny Java async HTTP application server.