3f194e6e3a62cbb846e8948eac8e4ce9aa7444a6 |
|
03-Jan-2012 |
Siva Velusamy <vsiva@google.com> |
gltrace: add user settings to control data captured. Currently users do not have control over the amount of data captured during tracing. This patch adds 3 settings that users can enable/disable at runtime: - capture framebuffer on eglSwap() calls - capture framebuffer on glDraw*() calls - capture texture data passed to glTexImage*() calls Disabling these options when not needed signficantly decreases the size of the trace file, and reduces performance overhead for the running application. These settings are stored in the per process GLTraceState. A separate thread listens for commands from the host, and updates the state based on the user commands. Change-Id: Ic4518b94e8bcbc5330ac7138153721caa98b365d
/frameworks/native/opengl/libs/GLES_trace/src/gltrace_egl.cpp
|
56ac6ff9bdc3c117e820c5a361ab45049c8b03f8 |
|
16-Dec-2011 |
Siva Velusamy <vsiva@google.com> |
gltrace: add start time & duration to each traced call. Change-Id: Idfec8f715f6000594b6381cbfdee9fdf6d89f484
/frameworks/native/opengl/libs/GLES_trace/src/gltrace_egl.cpp
|
93a826f78f6313db791e6fc880439189897651b3 |
|
14-Dec-2011 |
Siva Velusamy <vsiva@google.com> |
gltrace: transport buffering and context management This patch adds two improvements: 1. Protobuf messages are buffered and sent in chunks. 2. Multiple EGL contexts are handled properly: Corresponding to each EGLContext, a GLTraceContext with a unique ID is created. On eglMakeCurrent, the appropriate GLTraceContext is set and is used while tracing subsequent GL Calls in that thread. Change-Id: I34076376d3e5af205c87c7396ea47659844abd6e
/frameworks/native/opengl/libs/GLES_trace/src/gltrace_egl.cpp
|
f132ac35d82a2960542619fb3fb91d22ab256dc7 |
|
08-Dec-2011 |
Siva Velusamy <vsiva@google.com> |
gltrace: attach contents of the appropriate framebuffer Currently, gltrace always attaches the contents of the currently bound framebuffer. This patch changes it to attach the contents of FB0 on eglSwap, and the currently bound framebuffer for the glDraw* calls. Change-Id: Ice0520d45d75638fe61cd91149df773074216510
/frameworks/native/opengl/libs/GLES_trace/src/gltrace_egl.cpp
|
0469dd6d55fa331bfd7de9431da98b6340d82271 |
|
01-Dec-2011 |
Siva Velusamy <vsiva@google.com> |
glestrace: Framework for GLES tracing library This patch provides a framework for tracing GLES 1.0 and 2.0 functions. It is missing a lot of features, but here are the things it accomplishes: - Stop building the glesv2dbg library, and build the glestrace library instead. - Replace the hooks for glesv2dbg with the ones for glestrace. - Add the basics for the trace library. Currently, this traces all GL functions, but not all required data is sent for all the functions. As a result, it will not be possible to reconstruct the entire GL state on the host side. The files gltrace.pb.* and gltrace_api.* are both generated using the tools/genapi.py script. Change-Id: Id60a468f7278657f008bc6ea1df01f9bdfecfdd3
/frameworks/native/opengl/libs/GLES_trace/src/gltrace_egl.cpp
|