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