# 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.

AUTHOR = 'chromeos-gfx'
NAME = 'telemetry_GpuTests.memory'
SUITE = 'graphics, perf_v2'
TIME = 'LONG'
TEST_CATEGORY = 'Functional'
TEST_CLASS = 'gl'
TEST_TYPE = 'server'

DOC = """
This server control file executes the GPU telemetry test: memory.
"""

def run_test(machine):
    host = hosts.create_host(machine)
    job.run_test('telemetry_GpuTests', host=host, test='memory')


parallel_simple(run_test, machines)
