OLD | NEW |
1 # | 1 # |
2 # Copyright 2015 Google Inc. | 2 # Copyright 2015 Google Inc. |
3 # | 3 # |
4 # Use of this source code is governed by a BSD-style license that can be | 4 # Use of this source code is governed by a BSD-style license that can be |
5 # found in the LICENSE file. | 5 # found in the LICENSE file. |
6 # | 6 # |
7 | 7 |
8 #!/usr/bin/env python | 8 #!/usr/bin/env python |
9 | 9 |
10 usage = ''' | 10 usage = ''' |
(...skipping 23 matching lines...) Expand all Loading... |
34 if 'TegraK1' in bot or 'GTX550Ti' in bot or 'GTX660' in bot or 'GT610' in bot: | 34 if 'TegraK1' in bot or 'GTX550Ti' in bot or 'GTX660' in bot or 'GT610' in bot: |
35 if 'Android' in bot: | 35 if 'Android' in bot: |
36 configs.append('nvprmsaa4') | 36 configs.append('nvprmsaa4') |
37 else: | 37 else: |
38 configs.append('nvprmsaa16') | 38 configs.append('nvprmsaa16') |
39 | 39 |
40 # The S4 crashes and the NP produces a long error stream when we run with | 40 # The S4 crashes and the NP produces a long error stream when we run with |
41 # MSAA. The Tegra2 and Tegra3 just don't support it. | 41 # MSAA. The Tegra2 and Tegra3 just don't support it. |
42 if ('GalaxyS4' not in bot and | 42 if ('GalaxyS4' not in bot and |
43 'NexusPlayer' not in bot and | 43 'NexusPlayer' not in bot and |
44 'Tegra2' not in bot and | |
45 'Tegra3' not in bot): | 44 'Tegra3' not in bot): |
46 if 'Android' in bot: | 45 if 'Android' in bot: |
47 configs.append('msaa4') | 46 configs.append('msaa4') |
48 else: | 47 else: |
49 configs.append('msaa16') | 48 configs.append('msaa16') |
50 # Runs out of memory on Android bots and Daisy. Everyone else seems fine. | 49 # Runs out of memory on Android bots and Daisy. Everyone else seems fine. |
51 if 'Android' not in bot and 'Daisy' not in bot: | 50 if 'Android' not in bot and 'Daisy' not in bot: |
52 configs.append('pdf') | 51 configs.append('pdf') |
53 | 52 |
54 # Xoom and NP are running out of RAM when we run all these modes. skia:3255 | 53 # NP is running out of RAM when we run all these modes. skia:3255 |
55 if ('Xoom' not in bot and | 54 if 'NexusPlayer' not in bot: |
56 'NexusPlayer' not in bot): | |
57 configs.extend(mode + '-8888' for mode in | 55 configs.extend(mode + '-8888' for mode in |
58 ['serialize', 'tiles_rt', 'pipe']) | 56 ['serialize', 'tiles_rt', 'pipe']) |
59 configs.append('tiles_rt-gpu') | 57 configs.append('tiles_rt-gpu') |
60 if 'ANGLE' in bot: | 58 if 'ANGLE' in bot: |
61 configs.append('angle') | 59 configs.append('angle') |
62 args.append('--config') | 60 args.append('--config') |
63 args.extend(configs) | 61 args.extend(configs) |
64 | 62 |
| 63 if 'GalaxyS' in bot: |
| 64 args.extend(('--threads', '0')) |
| 65 |
65 blacklist = [] | 66 blacklist = [] |
66 # This image is too large to be a texture for many GPUs. | 67 # This image is too large to be a texture for many GPUs. |
67 blacklist.extend('gpu _ _ PANO_20121023_214540.jpg'.split(' ')) | 68 blacklist.extend('gpu _ _ PANO_20121023_214540.jpg'.split(' ')) |
68 blacklist.extend('msaa _ _ PANO_20121023_214540.jpg'.split(' ')) | 69 blacklist.extend('msaa _ _ PANO_20121023_214540.jpg'.split(' ')) |
69 | 70 |
70 # Several of the newest version bmps fail on SkImageDecoder | 71 # Several of the newest version bmps fail on SkImageDecoder |
71 blacklist.extend('_ image decode pal8os2v2.bmp'.split(' ')) | 72 blacklist.extend('_ image decode pal8os2v2.bmp'.split(' ')) |
72 blacklist.extend('_ image decode pal8v4.bmp'.split(' ')) | 73 blacklist.extend('_ image decode pal8v4.bmp'.split(' ')) |
73 blacklist.extend('_ image decode pal8v5.bmp'.split(' ')) | 74 blacklist.extend('_ image decode pal8v5.bmp'.split(' ')) |
74 blacklist.extend('_ image decode rgb16-565.bmp'.split(' ')) | 75 blacklist.extend('_ image decode rgb16-565.bmp'.split(' ')) |
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
129 if blacklist: | 130 if blacklist: |
130 args.append('--blacklist') | 131 args.append('--blacklist') |
131 args.extend(blacklist) | 132 args.extend(blacklist) |
132 | 133 |
133 match = [] | 134 match = [] |
134 if 'Valgrind' in bot: # skia:3021 | 135 if 'Valgrind' in bot: # skia:3021 |
135 match.append('~Threaded') | 136 match.append('~Threaded') |
136 if 'TSAN' in bot: # skia:3562 | 137 if 'TSAN' in bot: # skia:3562 |
137 match.append('~Math') | 138 match.append('~Math') |
138 | 139 |
139 if 'Xoom' in bot or 'GalaxyS3' in bot: # skia:1699 | 140 if 'GalaxyS3' in bot: # skia:1699 |
140 match.append('~WritePixels') | 141 match.append('~WritePixels') |
141 | 142 |
142 # skia:3249: these images flakily don't decode on Android. | 143 # skia:3249: these images flakily don't decode on Android. |
143 if 'Android' in bot: | 144 if 'Android' in bot: |
144 match.append('~tabl_mozilla_0') | 145 match.append('~tabl_mozilla_0') |
145 match.append('~desk_yahoonews_0') | 146 match.append('~desk_yahoonews_0') |
146 | 147 |
147 if 'NexusPlayer' in bot: | 148 if 'NexusPlayer' in bot: |
148 match.append('~ResourceCache') | 149 match.append('~ResourceCache') |
149 | 150 |
150 if match: | 151 if match: |
151 args.append('--match') | 152 args.append('--match') |
152 args.extend(match) | 153 args.extend(match) |
153 | 154 |
154 return args | 155 return args |
155 cov_end = lineno() # Don't care about code coverage past here. | 156 cov_end = lineno() # Don't care about code coverage past here. |
156 | 157 |
157 | 158 |
158 def self_test(): | 159 def self_test(): |
159 import coverage # This way the bots don't need coverage.py to be installed. | 160 import coverage # This way the bots don't need coverage.py to be installed. |
160 args = {} | 161 args = {} |
161 cases = [ | 162 cases = [ |
162 'Test-Android-GCC-Nexus9-GPU-TegraK1-Arm64-Debug', | 163 'Test-Android-GCC-Nexus9-GPU-TegraK1-Arm64-Debug', |
163 'Test-Android-GCC-GalaxyS3-GPU-Mali400-Arm7-Debug', | 164 'Test-Android-GCC-GalaxyS3-GPU-Mali400-Arm7-Debug', |
164 'Test-Android-GCC-Nexus7-GPU-Tegra3-Arm7-Release', | 165 'Test-Android-GCC-Nexus7-GPU-Tegra3-Arm7-Release', |
165 'Test-Android-GCC-NexusPlayer-CPU-SSSE3-x86-Release', | 166 'Test-Android-GCC-NexusPlayer-CPU-SSSE3-x86-Release', |
166 'Test-Android-GCC-Xoom-GPU-Tegra2-Arm7-Release', | |
167 'Test-Ubuntu-GCC-ShuttleA-GPU-GTX550Ti-x86_64-Release-Valgrind', | 167 'Test-Ubuntu-GCC-ShuttleA-GPU-GTX550Ti-x86_64-Release-Valgrind', |
168 'Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-TSAN', | 168 'Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-TSAN', |
169 'Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-Valgrind', | 169 'Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-Valgrind', |
170 'Test-Win7-MSVC-ShuttleA-GPU-HD2000-x86-Debug-ANGLE', | 170 'Test-Win7-MSVC-ShuttleA-GPU-HD2000-x86-Debug-ANGLE', |
171 ] | 171 ] |
172 | 172 |
173 cov = coverage.coverage() | 173 cov = coverage.coverage() |
174 cov.start() | 174 cov.start() |
175 for case in cases: | 175 for case in cases: |
176 args[case] = get_args(case) | 176 args[case] = get_args(case) |
(...skipping 15 matching lines...) Expand all Loading... |
192 if len(sys.argv) == 2 and sys.argv[1] == 'test': | 192 if len(sys.argv) == 2 and sys.argv[1] == 'test': |
193 self_test() | 193 self_test() |
194 sys.exit(0) | 194 sys.exit(0) |
195 | 195 |
196 if len(sys.argv) != 3: | 196 if len(sys.argv) != 3: |
197 print usage | 197 print usage |
198 sys.exit(1) | 198 sys.exit(1) |
199 | 199 |
200 with open(sys.argv[1], 'w') as out: | 200 with open(sys.argv[1], 'w') as out: |
201 json.dump(get_args(sys.argv[2]), out) | 201 json.dump(get_args(sys.argv[2]), out) |
OLD | NEW |