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