Home | History | Annotate | Download | only in graphics_GLBench
      1 # Copyright (c) 2014 The Chromium OS Authors. All rights reserved.
      2 # Use of this source code is governed by a BSD-style license that can be
      3 # found in the LICENSE file.
      4 
      5 NAME = 'graphics_GLBench.bvt'
      6 AUTHOR = 'chromeos-gfx'
      7 PURPOSE = 'Benchmark the graphics library performance.'
      8 CRITERIA = """
      9 On bvt this test is not run as a benchmark. (One can find approximate
     10 performance numbers in the logs though, but they are ignored.) It still
     11 generates output images and verifies their bit accuracy using MD5 checksums
     12 which are stored in
     13 ../../deps/glbench/glbench_reference_images.txt (for known good images)
     14 and in ../../deps/glbench/glbench_knownbad_images.txt (for ignored failures -
     15 this should be very rare though).
     16 
     17 If unknown images are encountered the test fails. To resolve this use an
     18 image diffing tool like Beyond Compare and visually check differences between
     19 the unknown image and older versions in ../../deps/glbench-images/.
     20 Note: it should nearly never be required to remove old versions of good/bad
     21 images from these directories.
     22 """
     23 # It is intentional that this suite is part of bvt-inline and bvt-perbuild
     24 # suites to get more stability data. Do not change this.
     25 ATTRIBUTES = "suite:bvt-inline, suite:bvt-perbuild, suite:graphics, suite:graphics_per-day, suite:graphics_system"
     26 TIME='FAST'
     27 TEST_CATEGORY = 'Performance'
     28 TEST_CLASS = "gl"
     29 TEST_TYPE = 'client'
     30 JOB_RETRIES = 2
     31 BUG_TEMPLATE = {
     32     'components': ['OS>Kernel>Graphics'],
     33 }
     34 
     35 DOC = """
     36 On bvt we do not upload performance numbers to the chrome dashboard. We run
     37 glbench with the "-hasty" option to stay well below the BVT limit of 20
     38 minutes. This option will run each test at 512x512 resolution only, run it
     39 only for a fraction of the loops we normally do, and not cool down the
     40 machine between tests. For this PerfControl is disabled.
     41 
     42 This benchmark executes glbench, a graphics benchmark designed to time how long
     43 various graphic intensive activities take, which includes measuring:
     44   - fill rate
     45     - blended
     46     - opaque
     47   -Z reject rate
     48   -triangle rate
     49     - no cull
     50     - half cull (half triangles backface culled)
     51     - full cull (mix of back face and degenerates)
     52   - blend rate
     53   - texture fetch
     54     - nearest
     55     - bilinear
     56     - trilinear
     57   - compute
     58     - vertex shader
     59     - pixel shader
     60     - *fragement shader to test ddx and ddy
     61   - attribute fetch
     62   - color depth stencil test
     63   - *state change
     64   - texture upload
     65   - read back
     66 
     67 * Not yet implemented.
     68 """
     69 
     70 job.run_test('graphics_GLBench', hasty=True)
     71