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