[Mesa-dev] [PATCHv2 00/13] multithread GLSL compiler
Chia-I Wu
olvaffe at gmail.com
Wed Jul 9 00:47:41 PDT 2014
Hi list,
This is my second try to add multithread support for the GLSL compiler.
Changes since v1 are
- glLinkProgram can now be threaded
- added ctx->Const.DeferCompileShader and ctx->Const.DeferLinkProgram to
allow drivers to control what get threaded
- minimal changes to i965 to enable DeferLinkProgram
The most interesting patch should be patch 8, which makes the necessary
changes to core mesa. Patch 13 touches i965 and is more a RFC patch.
v2 still requires applications to "Do the Right Thing" to benefit from
multithread compiler. But that can be changed as noted in patch 8. I am open
to suggestions.
A summary of the patches:
Patch 1 makes our GL_KRH_debug implementation thread-safe.
Patch 2~5 make the GLSL compiler thread-safe. These are mostly the same as v1,
except for how locale_t is initialized.
Patch 6~7 add a singleton thread pool to the compiler.
Patch 8 adds the infrastructure to core mesa to enable multithread
compiling/linkg, and patch 9 adds a dri option to enable DeferCompileShader
for i965.
Patch 10~12 refactor some code in i965 and patch 13 adds the necessary changes
to enable DeferLinkProgram.
More information about the mesa-dev
mailing list