blob: 83b700927a36c0cd31e1bbbb5fd06c6040a66e7a [file] [log] [blame]
# Copyright (c) 2014 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
NAME = 'graphics_GLBench'
AUTHOR = 'chromeos-gfx'
PURPOSE = 'Benchmark the graphics library performance.'
CRITERIA = """
On bvt this test is not run as a benchmark. (One can find approximate
performance numbers in the logs though, but they are ignored.) It still
generates output images and verifies their bit accuracy using MD5 checksums
which are stored in
../../deps/glbench/glbench_reference_images.txt (for known good images)
and in ../../deps/glbench/glbench_knownbad_images.txt (for ignored failures -
this should be very rare though).
If unknown images are encountered the test fails. To resolve this use an
image diffing tool like Beyond Compare and visually check differences between
the unknown image and older versions in ../../deps/glbench-images/.
Note: it should nearly never be required to remove old versions of good/bad
images from these directories.
"""
SUITE = 'bvt'
TIME='FAST'
TEST_CATEGORY = 'Performance'
TEST_CLASS = "gl"
TEST_TYPE = 'client'
EXPERIMENTAL = 'True'
DOC = """
On bvt we do not upload performance numbers to the chrome dashboard. We run
glbench with the "-hasty" option to stay well below the BVT limit of 20
minutes. This option will run each test at 512x512 resolution only, run it
only for a fraction of the loops we normally do, and not cool down the
machine between tests. For this PerfControl is disabled.
This benchmark executes glbench, a graphics benchmark designed to time how long
various graphic intensive activities take, which includes measuring:
- fill rate
- blended
- opaque
-Z reject rate
-triangle rate
- no cull
- half cull (half triangles backface culled)
- full cull (mix of back face and degenerates)
- blend rate
- texture fetch
- nearest
- bilinear
- trilinear
- compute
- vertex shader
- pixel shader
- *fragement shader to test ddx and ddy
- attribute fetch
- color depth stencil test
- *state change
- texture upload
- read back
* Not yet implemented.
"""
job.run_test('graphics_GLBench', hasty=True)