View difference between Paste ID: 6XY0fYyk and qs1B3W5p
SHOW: | | - or go back to the newest paste.
1
1. Make sure all GPU stored / synthesized assets (FBOs, shaders, textures) can be read-back and reconstructed, test by destroying and rebuilding the GL context.
2
2. Break out all GL/EGL code to go via per-GPU populated vtables.
3
3. Add config options to reference GL library etc. per GPU, and priority/swap list for GPUs.
4
3. Test GPU- swapping by performing 1, switch backing GPU in 2.
5
4. Add affinity-tracking to all GPU backed store (bitmap of synched GPU)
6
5. Increase daily cocktail budget.
7
6. On new client-shm or compositor side buffers, murder vram by PBO+mirroring or lose some sanity by deferring the transfer to trigger ‘on-demand’ when the same
8
   object backing store is required on multiple GPUs.
9
7. Shader-compilation time, do that for all GPUs.
10
8. Test-case that performs the same scene graph on both GPUs, readback and pixel-pixel comparison.
11
9. Increase daily cocktail budget.
12
10. Add protocol paths to hint/bias GPU.
13
11. Repeat the same process on client side.
14
12. Enjoy the hollow fruits of having performed the equivalent of a 500m long 2km underground caving squeeze in a space filled with spiders. That nibble at your face.