Home | History | Annotate | Download | only in sequences
      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 AUTHOR = "puthik"
      6 NAME = "MemoryQual"
      7 ATTRIBUTES = "suite:memory_qual"
      8 SUITE = "memory_qual"
      9 TIME = "LENGTHY"
     10 TEST_CATEGORY = "Stress"
     11 TEST_CLASS = "suite"
     12 TEST_TYPE = "server"
     13 
     14 DOC = """
     15 Sequence for qualification new memory part to AVL.
     16 """
     17 
     18 HOUR_IN_SECS=60*60
     19 
     20 CLIENT_TESTS= [
     21     ('platform_MemCheck', {}),
     22     ('hardware_RamFio', {
     23         'requirements': [('ram_suite', [])]}),
     24     ('hardware_MemoryThroughput', {
     25         'tag': 'memory_qual', 'test': 'bcopy', 'warmup': 100,
     26         'num_iterations': 100, 'parallel': 2,
     27         'sizes' : [ 1024, 2048, 4096, 8192,
     28                     15360, 16384, 24576,
     29                     30720, 32768, 33792,
     30                     49152, 65536, 98304,
     31                     130048, 131072, 256000,
     32                     262144, 393216, 524288,
     33                     1048576, 1468006, 1572864,
     34                     1966080, 2097152, 2228224,
     35                     2621440, 3072000, 3145728,
     36                     3276800, 4194304, 8388608,
     37                     16777216, 33554432, 67108864]}),
     38     ('hardware_MemoryLatency', {
     39         'sample_size_kb': [ int(2), int(192), int(1024)]}),
     40     ('hardware_Memtester', {
     41         'tag' : 'memory_qual', 'loop' : 100}),
     42     ('hardware_SAT', {
     43         'tag' : 'memory_qual', 'seconds' : 8 * HOUR_IN_SECS}),
     44     ('power_MemorySuspend', {
     45         'tag' : 'memory_qual', 'num_suspends' : 10000}),
     46 ]
     47 
     48 SERVER_TESTS= [
     49     ('hardware_MemoryIntegrity', {
     50         'tag' : 'idle', 'seconds' : HOUR_IN_SECS, 'suspend': False}),
     51     ('hardware_MemoryIntegrity', {
     52         'tag' : 'suspend', 'seconds' : HOUR_IN_SECS, 'suspend': True}),
     53 ]
     54 
     55 def run_client_test(machine):
     56     client = hosts.create_host(machine)
     57     client_at = autotest.Autotest(client)
     58     for test, argv in CLIENT_TESTS:
     59         client.reboot()
     60         client_at.run_test(test, **argv)
     61 
     62 def run_server_test(machine):
     63     client = hosts.create_host(machine)
     64     for test, argv in SERVER_TESTS:
     65         client.reboot()
     66         job.run_test(test, client_ip=machine, **argv)
     67 
     68 
     69 job.parallel_on_machines(run_client_test, machines)
     70 parallel_simple(run_server_test, machines)
     71