Adds a --reset flag that controls whether we teardown the graphics
context between samples. Also modifies the timing algorithm to always/
only pre-warm after resetting the context.
BUG=skia:
Review URL: https://codereview.chromium.org/1442643007
GLBenches do not expect gl state to change between onPerCanvasPreDraw and *PostDraw, but we do a clear and sometimes we clear as draw. This causes us to bind vertex objects / programs / etc.
This change creates two new virtual methods which are called right before and immediately after timing.
BUG=skia:
Review URL: https://codereview.chromium.org/1379853003
Displays each benchmark/skp with a graph showing a series of frame times.
Use the space bar to skip to the next benchmark.
Adds an option to hit ESC to quit VisualBench. Useful in fullscreen mode.
Review URL: https://codereview.chromium.org/1336043003