[Mesa-dev] [PATCH v2 0/3] asynchronous pbo transfer with glthread
Gregory Hainaut
gregory.hainaut at gmail.com
Sat Apr 1 09:42:47 UTC 2017
Hello,
Please find a new version to handle invalid buffer handles.
Allow to handle this kind of case:
genBuffer(&pbo);
DeleteBuffer(pbo);
BindBuffer(pbo)
TexSubImage2D(user_memory_pointer); // Data transfer will be synchronous
There are various subtely to handle multi threaded shared context. In order to
keep the code sane, I've considered a buffer invalid when it is deleted by a
context even it is still bound to others contexts. It will force a synchronous
transfer which is always safe.
Gregory Hainaut (3):
mesa/glthread: track buffer creation/destruction
mesa/glthread: add tracking of PBO binding
mapi/glthread: generate asynchronous code for PBO transfer
src/mapi/glapi/gen/ARB_direct_state_access.xml | 18 +--
src/mapi/glapi/gen/ARB_robustness.xml | 2 +-
src/mapi/glapi/gen/gl_API.dtd | 10 +-
src/mapi/glapi/gen/gl_API.xml | 32 +++---
src/mapi/glapi/gen/gl_marshal.py | 23 +++-
src/mapi/glapi/gen/marshal_XML.py | 19 +++-
src/mesa/main/glthread.h | 10 ++
src/mesa/main/marshal.c | 149 ++++++++++++++++++++++++-
src/mesa/main/marshal.h | 24 ++++
src/mesa/main/mtypes.h | 5 +
src/mesa/main/shared.c | 4 +
11 files changed, 257 insertions(+), 39 deletions(-)
--
2.1.4
More information about the mesa-dev
mailing list