[Mesa-dev] [PATCH v2 00/15] GL_AMD_performance_monitor
Samuel Pitoiset
samuel.pitoiset at gmail.com
Sun Mar 22 08:35:34 PDT 2015
Hello,
A series I have waited too long to re-submit, but I recently refactored the
code and fixed some minor issues.
This patchset enables GL_AMD_performance_monitor for svga, freedreno, r600,
radeonsi and nvc0 drivers.
This code has been tested with Nouveau (NVD9 and NVE7) but it should also work
with other drivers. All piglit tests, including API and measurement tests are
okay.
Feel free to make a review.
Changes since v1:
* add PIPE_DRIVER_QUERY_TYPE_BYTES (PATCH 02/15)
* rebased on master since galahad driver has been removed
Christoph Bumiller (1):
st/mesa: implement GL_AMD_performance_monitor
Samuel Pitoiset (14):
gallium: add pipe_screen::get_driver_query_group_info
gallium: add new fields to pipe_driver_query_info
gallium: add new numeric types to pipe_query_result
gallium: replace pipe_driver_query_info::max_value by a union
gallium: make pipe_context::begin_query return a boolean
gallium: add util_get_driver_query_group_info
svga: implement pipe_screen::get_driver_query_group_info
freedreno: implement pipe_screen::get_driver_query_group_info
radeon: implement pipe_screen::get_driver_query_group_info
nvc0: implement pipe_screen::get_driver_query_group_info
docs: mark GL_AMD_performance_monitor for the 10.6.0 release
nvc0: expose more driver-specific query groups
nvc0: make begin_query return false when all MP counters are used
nvc0: all queries use an unsigned 64-bits integer by default
docs/relnotes/10.6.0.html | 1 +
src/gallium/auxiliary/Makefile.sources | 1 +
src/gallium/auxiliary/hud/hud_driver_query.c | 5 +-
src/gallium/auxiliary/util/u_query.c | 50 +++
src/gallium/auxiliary/util/u_query.h | 45 ++
src/gallium/docs/source/screen.rst | 10 +
src/gallium/drivers/freedreno/freedreno_query.c | 25 +-
src/gallium/drivers/freedreno/freedreno_query.h | 3 +-
src/gallium/drivers/freedreno/freedreno_query_hw.c | 3 +-
src/gallium/drivers/freedreno/freedreno_query_sw.c | 3 +-
src/gallium/drivers/i915/i915_query.c | 3 +-
src/gallium/drivers/ilo/ilo_query.c | 3 +-
src/gallium/drivers/llvmpipe/lp_query.c | 3 +-
src/gallium/drivers/noop/noop_pipe.c | 3 +-
src/gallium/drivers/nouveau/nv30/nv30_query.c | 5 +-
src/gallium/drivers/nouveau/nv50/nv50_query.c | 3 +-
src/gallium/drivers/nouveau/nvc0/nvc0_query.c | 100 ++++-
src/gallium/drivers/nouveau/nvc0/nvc0_screen.c | 1 +
src/gallium/drivers/nouveau/nvc0/nvc0_screen.h | 14 +
src/gallium/drivers/r300/r300_query.c | 9 +-
src/gallium/drivers/radeon/r600_pipe_common.c | 25 +-
src/gallium/drivers/radeon/r600_pipe_common.h | 1 +
src/gallium/drivers/radeon/r600_query.c | 16 +-
src/gallium/drivers/rbug/rbug_context.c | 8 +-
src/gallium/drivers/softpipe/sp_query.c | 3 +-
src/gallium/drivers/svga/svga_context.h | 1 +
src/gallium/drivers/svga/svga_pipe_query.c | 3 +-
src/gallium/drivers/svga/svga_screen.c | 17 +-
src/gallium/drivers/trace/tr_context.c | 6 +-
src/gallium/include/pipe/p_context.h | 2 +-
src/gallium/include/pipe/p_defines.h | 36 +-
src/gallium/include/pipe/p_screen.h | 11 +
src/mesa/Makefile.sources | 2 +
src/mesa/state_tracker/st_cb_perfmon.c | 455 +++++++++++++++++++++
src/mesa/state_tracker/st_cb_perfmon.h | 70 ++++
src/mesa/state_tracker/st_context.c | 4 +
src/mesa/state_tracker/st_extensions.c | 3 +
37 files changed, 887 insertions(+), 66 deletions(-)
create mode 100644 src/gallium/auxiliary/util/u_query.c
create mode 100644 src/gallium/auxiliary/util/u_query.h
create mode 100644 src/mesa/state_tracker/st_cb_perfmon.c
create mode 100644 src/mesa/state_tracker/st_cb_perfmon.h
--
2.3.3
More information about the mesa-dev
mailing list